Best WooCommerce restaurant plugins

If you're looking to create a food delivery or takeaway service for your restaurant, WooCommerce for restaurants is a great solution. With a WordPress food delivery plugin, setting up an online ordering system on your website is easy. Keep reading to learn how to create a seamless online ordering experience.

In this tutorial, you'll discover how to create a restaurant ordering system using WooCommerce for restaurants. Restaurants can greatly benefit from having an online food ordering system because:

  • It allows customers to place their orders directly from the restaurant's website, saving them time and effort.
  • Best online ordering for restaurants can also help manage their orders more efficiently and reduce the workload on their staff.

Whether you're a seasoned WooCommerce user or just starting out, I'll show you how to set up a restaurant ordering system step by step. By the end, you will have a fully functional WooCommerce food ordering system. It will allow customers to place their orders, select pickup or delivery options, and make payments securely.

WooCommerce restaurant plugin
And the best part?

Your WooCommerce for restaurants ordering system will be 100% yours. You own your data, and you get to keep 100% of your profits.

Sound good? Let’s get started!

Why a WooCommerce for restaurants plugin is the best (and cheapest) way to take food orders online

Before we dive into the tutorial, let's look at why a WooCommerce food plugin for restaurants is the best option for taking food orders.

Many restaurants use hosted third-party services like Just Eat, Uber Eats, Deliveroo and Grubhub. By listing your restaurant with these platforms, you have access to a huge market of potential online food delivery customers. However, it’s not ideal for everyone.

Here's why:
  • No hidden charges - Hosted platforms take a big cut of the revenue from your online restaurant orders. For example, Just Eat takes 14% at the time of writing. Whilst they have a massive user base, you're competing with other restaurants on the same platform. It's easy for your restaurant to get lost.
  • Huge range of plugins available for site customization - With hosted platforms, you have no control over the functionality of your online restaurant ordering system. In contrast, you can infinitely customize a WooCommerce restaurant ordering system. Do this by installing themes, plugins, or even writing your own custom code.
  • Scalability of WooCommerce - As the world's leading ecommerce system, you can use WooCommerce to run restaurant ordering systems containing hundreds, thousands or even millions of items.
  • SEO capabilities - Since restaurant ordering will take place on your own WooCommerce store, you have full control over its marketing. You can build the authority of your restaurants' domain name over time, creating a valuable assets for your business.
  • Better checkout experience - The WooCommerce checkout is optimized for conversions and you can customize it further using plugins. For example, you can allow customers to choose a delivery or collection time slot, or let customers check out in a popup.
  • Payment flexibility - WooCommerce integrates with every payment gateway you can think of - PayPal, credit card, cash, etc. You're not restricted to the ones provided by a specific platform.
  • You own your data - As with any hosted system, closed platforms have full control over your customer data. With WooCommerce, you own it.
  • Advanced tracking and analytics - As the site owner, you have full access to your data. WooCommerce contains useful sales reports and you can enhance this by adding plugins.

WooCommerce restaurant plugin with opening hours

What you'll learn

If you’re looking for a low-cost Just Eat alternative without the fees, this tutorial will teach how you to create a bespoke online food ordering system.

We'll do it using a WordPress food delivery plugin. This means that you don't have to worry about the problems of affiliating to a third-party platform. In addition, having a WooCommerce for restaurants food ordering system on your main restaurant website looks more professional. It encourages customers to spend more time on your site, building loyalty.

What will my WooCommerce for restaurants ordering system cost?

Online food delivery system integrated with kitchen

There are financial advantages to getting a WordPress site for your restaurant. Almost all of the costs are fixed one-off, upfront fees. As a result, rather than losing a percentage of every sale, the benefit improves with every order you receive. You start saving money almost immediately.

These are the costs of building the food ordering website described in this tutorial:

  • WordPress content management system – free of charge.
  • WooCommerce plugin – free of charge.
  • WooCommerce Restaurant Ordering plugin.
  • WordPress theme – free of charge (you could buy a premium WooCommerce restaurant theme for ~$65, but this tutorial will show you how to add the best online ordering for restaurants website using a free theme).
  • Ongoing web hosting – web hosting comes at all different price points to suit any size of business. We recommend Kinsta's premium WordPress hosting. This is ideal for an ecommerce website with an online restaurant ordering system. For lower budgets, SiteGround is also good.
  • Payment processor fees – if offer online payment methods (which isn’t essential) then your payment gateway will take a percentage of the fees. This is normally a few percent - much cheaper than Just Eat’s 14%.

As you can see, setting up a WordPress food delivery system plugin yourself is far cheaper than using a third-party platform such as Just Eat.

Still not convinced? Let me show you how simple it is to set up a WooCommerce for restaurants ordering system.

Should I create a DIY WordPress food delivery website, or hire a developer?

Below, I'm going to tell you how to create a WooCommerce for restaurants ordering website using a simple WordPress food delivery plugin. This is a great option and you don't need any technical know-how.

If you'd rather have someone else set up the website for you, just forward this tutorial to any WordPress developer.

To build your own WooCommerce for restaurant order system, keep reading and I'll show you how.

How to create a WooCommerce for restaurant ordering website

In this video tutorial, you can watch me create a restaurant online food ordering system. Build yours alongside me, or read the written tutorial below.

The following tutorial covers every step of setting up a WooCommerce restaurant website:

  1. Create a WordPress websiteWordPress is the world's web building platform. It powers your overall website and makes it easy to add pages and edit content.
  2. Install WooCommerceWooCommerce is the world’s top e-commerce platform, powering over 41% of online stores. We'll use WooCommerce to add products and categories and take payments online (including PayPal and credit card). We'll also use it to add delivery and collection.
  3. Install WooCommerce Restaurant OrderingThis plugin converts your WooCommerce store into a fully-fledged food ordering system. It displays your products in a user-friendly one-page restaurant ordering system. That way, customers can browse, pick, and customize their orders. It also lets you set opening times and prevent ordering when you're closed.
  4. Add options to your food productsI'll show you 2 easy ways to add extra options for your food items, such as size choices or selling pizza toppings.
  5. Delivery and collectionWe'll discover how to add a range of delivery and collection options.
  6. Bonus tipsFinally, I'll share some extra tips on perfecting your WooCommerce restaurant ordering system. This includes accepting tips online to increase your average order value; selling discounted meal deals; and online ordering for multiple restaurant chains.

1. Create a WordPress website

This tutorial assumes that you already have a WordPress website for your restaurant. If not, there are loads of online resources to help you get started with WordPress.

Since this tutorial is aimed at non-coders, I recommend using a WooCommerce-ready theme for the design of your website. The screenshots in this article were all created using Storefront. This is a high-quality, free WP theme from the makers of WooCommerce. If you prefer, then you can use a WooCommerce restaurant theme such as Delicio.

Delicio theme uses Woocommerce Restaurant Ordering plugin by Barn2
The WooCommerce Restaurant Ordering plugin with the Delicio theme

2. Install and set up WooCommerce

Once you’ve got a WP website with a WooCommerce-ready theme installed, it's time to install WooCommerce. This will be the core of your online restaurant food ordering system and the basis for installing your WordPress food delivery system plugin. It provides behind-the-scenes e-commerce features such as the shopping cart, checkout, and online payments.

However, we won’t be using Woo to display your food menu items. You’ll need WooCommerce Restaurant Ordering for that, which we’ll cover in Step 3.

2a. How to install WooCommerce

  1. Log into the WordPress dashboard for your website.
  2. Go to Plugins → Add New.
  3. Search for 'WooCommerce', and install and activate the plugin.
  4. A button will appear towards the top of the WordPress admin prompting you to enter the WooCommerce setup wizard. Go through the wizard and enter your currency, tax details, etc. (Ignore shipping as we'll do this in step 5). Tell the wizard to create the basic pages needed for WooCommerce such as Shop, Cart, and Checkout.
  5. In the payment options section of the setup wizard, choose 'PayPal Payments Standard' and enter your PayPal email address. This is the quickest way to get started and you can always set up other payment options later. If you don’t want to take online payments, select 'Cash on delivery' and your restaurant staff or delivery drivers can take payment instead. To take credit/debit card payments without PayPal, then select 'Stripe' and follow the onscreen instructions.

2b. Create product categories for your restaurant menu

Online restaurant ordering WooCommerce categories
Most restaurant menus are divided into sections: Starters, Pizza, Salads, Desserts, Drinks, and so on. You need to create a separate WooCommerce product category for each section of your restaurant menu:

  1. Look at how your food delivery menu is structured and write a list of categories.
  2. In the WordPress admin, go to Products → Categories.
  3. In the 'Add New Product Category' section on the left, create a category for each section on your online menu. Add a Name and Slug, plus a description if you want to display some introductory text for the category on the food order form.
  4. Click the blue 'Add New Product Category' button.

The WooCommerce product categories you’ve just created for your menu will appear in a list on the right-hand side of the page.

2c. Add each dish or meal as a WooCommerce product

Next, add each food from your restaurant menu as a WooCommerce product.

In the WordPress admin, go to Products → Add New. Add the information highlighted in the screenshot below:

  1. Title – The name of the dish to appear in the online restaurant ordering system.
  2. Long Description (optional) – This can appear in the lightbox popup for each food (if you enable lightboxes in step 3). It's ideal for listing allergens and nutritional information.
  3. Product Data – Choose a product type. If your restaurant only offers 1 version of the dish then choose 'Simple Product' and add the price. If you offer choices (e.g. Small, Medium, and Large), choose 'Variable Product' and add the remaining information in step 4.
  4. Product Short Description (optional) – Use this to display extra information about the meal. This can appear on your one-page restaurant order form. It's a good place to list nutritional symbols, such as "GF, VG" for a dish that is Gluten Free and Vegan.
  5. Product Categories – Tick the menu category that the food should appear in. (WooCommerce lets you select multiple categories but most online restaurant ordering systems would have 1 category for each food, just like a printed menu.)
  6. Product Image (optional) – Click 'Add Featured Image' and upload a picture of the food. Restaurant food photography is a skill and it’s worth getting this done professionally. If your online restaurant order form will have small images then keep the file sizes small.
  7. Publish – Click the blue 'Publish' button.
WooCommerce restaurant ordering system

3. Install WooCommerce Restaurant Ordering

By now you've set up WooCommerce, added your dishes and structured them into the sections on your restaurant menu. Next, it's time to create a one-page food order form so that hungry customers can quickly build their meals and order online.

We'll do this using the powerful WooCommerce Restaurant Ordering plugin. WooCommerce provides its own layouts but they're not suitable for an online food ordering system. As a WordPress food delivery plugin, WooCommerce for Restaurant Ordering lists your menu in a one-page order form which is perfect for food ordering.

3a. Install WooCommerce Restaurant Ordering

  1. Buy the WooCommerce Restaurant Ordering plugin.
  2. Download the plugin files and copy your license key from the order confirmation page or email.
  3. In the WordPress admin, go to Plugins → Add New → Upload.
  4. Upload the zip file for WooCommerce Restaurant Ordering and activate the plugin.
  5. Go to WooCommerce → Settings → Restaurant and enter your license key. Here, you can also choose the default settings for your restaurant food order forms. Use these to configure the order forms. Also add opening times so that people can only order food while you're open.
WooCommerce Restaurant Ordering plugin settings

3b. View your restaurant ordering page

When you activated WooCommerce Restaurant Ordering, the plugin automatically created a one-page food ordering system for you. This lists all your food products, divided by category.

Find the page under the Pages section of the WordPress admin, and see how it looks!

WooCommerce resturant plugin flexible food order forms
These are just some of the many ways you can list foods with WooCommerce Restaurant Ordering

Next, you need an easy way for customers to review and complete their restaurant orders. The best way to do this is to install the WooCommerce Fast Cart plugin. This adds a floating cart popup so that customers can make changes, enter their details and check out without leaving the page. It's really flexible and you can choose whether to open the popup automatically as soon as customers add foods to their order or to display a clickable floating cart icon instead. 

WooCommerce restaurant floating cart
A website using WooCommerce Restaurant Ordering with the Fast Cart plugin.

2c. Create more food order forms (optional)

So far, you've learned how to use the default restaurant ordering page, which lists all your foods by category. If you need more flexibility, then you can also create food order forms individually.

You can do this by adding a [restaurant_ordering] shortcode anywhere on your site. Use the shortcode options to choose which categories to include, and customize the settings. This might be useful if:

  • You're listing foods on more than one page of your website, for example with one page per category.
  • You'd like to use different settings for each food order form, such as showing images or descriptions for some categories and not others.

4. Add options to your food products

If you only offer 1 version of each dish, you can ignore this section. If you want to give customers a choice – for example to choose a size or select pizza toppings – then you need product variations or add-ons.

Variable products are built into WooCommerce. You can list each type of variation as a dropdown list alongside each product in your online restaurant ordering system. Customers can select 1 variation from each list.

If you want customers to be able to make multiple selections, then you need add-ons instead. You can add more flexible options with the WooCommerce Product Options plugin. It works perfectly with WooCommerce Restaurant Ordering plugin we're using for the food order system. You can use it to add checkboxes, radio buttons, multi-select dropdowns, text input fields where the customer can type a special message, and more. For example, a WooCommerce pizza restaurant will need Product Options so that customers can order as many extra toppings as they like.

WooCommerce restaurant variations and add-ons
An example of a pizza with product variations for Pizza Size, and add-ons for Crust Style and Extra Toppings.

Next, I'll show you how to add both types of extra product options. You can use them separately or together in your WooCommerce restaurant ordering system.

Adding product variations

  1. Select 'Variable product' in the 'Product Data' section of the 'Add/Edit Product' page.
  2. Go to the 'Attributes' tab, add the product information that customers will be choosing between, and tick 'Used for variations'.
    WooCommerce restaurant ordering system
  3. Go to the 'Variations' tab.
  4. Either select 'Create variations from all attributes' from the dropdown, or add each variation individually and click 'Go'.
  5. Click the little triangle arrow that appears when you hover over a variation and add the variation price and any other information.
    Add Variation WooCommerce restaurant ordering system
  6. Finally, click 'Save changes'. When customers click on food in the restaurant order form, they can choose the variations from a lightbox before adding it to the cart.

How to create Product Add-Ons

  1. Buy, install, and activate the WooCommerce Product Options plugin.
  2. Go to Products → Product Options in the WordPress admin.
  3. Add as many options as you like, structured into groups.
  4. When customers click on a food product in your WooCommerce restaurant order form, the add-ons will appear for them to select in a lightbox.
WooCommerce restaurant order form with extra options

5. Set up delivery, collection and delivery time slots

WooCommerce offers lots of delivery options, which are perfect for restaurants. The free WooCommerce plugin lets you set up delivery areas and delivery or collection options. You can also use an additional plugin to let customers choose a specific delivery time or collection slot.

5a. Delivery areas and options

You can find these in the WooCommerce → Settings → Shipping section of the WordPress admin.

Here are some suggested shipping options that are useful for online restaurant ordering:

  • Shipping zonesCreate one or more shipping zones for your different delivery areas. For example, if you offer free shipping for certain zip codes and charge for delivery in other areas, then set up 2 shipping zones. If you also offer collection, add a third shipping zone so that people can 'click and collect' wherever they live.
  • Shipping optionsAdd one or more delivery options for each shipping zone. For example, your 'Local Delivery Area' shipping zone might have a 'Free Delivery' option for orders over $20, a $5 'Flat Rate' option for lower value orders, and a 'Local Pickup' option for customers wishing to collect their takeout meal.
WooCommerce restaurant delivery options
An example of WooCommerce delivery options for a typical restaurant

Let customers check the delivery area before they start ordering

To make your online restaurant ordering system more user-friendly, I recommend adding details of your delivery area elsewhere on your site. Here are some ideas on how you can do this:

  • Woo Delivery Area Pro pluginAdd a 'Delivery Area' page to your restaurant website.
  • If your website has a sidebar (right or left column), add a widget about your restaurant's delivery area. Or even better, add a custom Google map showing your online food delivery area.
  • Install the Woo Delivery Area Pro plugin so that customers can check they're in your delivery area before they start building their meal.

5b. Delivery time slots

Some restaurants like to deliver their online orders as soon as they're ready. Others let customers order in advance and choose a specific time slot. As a restaurant, you might want to take up to 5 online food orders in each half-hour period, and make sure they order at least 15 minutes in advance of their time slot. You can do this with the WooCommerce Opening Hours & Chosen Times plugin.

This excellent plugin lets customers choose a delivery date and time slot, subject to your restaurant's opening hours and capacity. You can restrict the number of bookings per time slot. You can specify how long customers must place their orders before their time slot, giving the kitchen plenty of time to prepare the meal.

6. Bonus tips

Before we finish, I'll share some more top tips for perfecting your WooCommerce restaurant ordering system. You'll learn how to accept tips online, sell meal deals, and more. If you operate a chain of restaurants, then you'll also learn how to adapt this tutorial to set up the best online ordering for restaurants for multiple sites.

Encourage customers to leave a tip

All over the world, restaurant customers expect to leave a tip. Don't miss out just because you're selling online! You can add tipping to your WooCommerce restaurant website using the WooCommerce Donation Or Tip On Cart And Checkout plugin.

This handy plugin adds a 'Tip' field to the WooCommerce checkout page. Customers can enter the value of their tip, significantly increasing your average order value.

Most restaurant customers add a tip of 10-15% of the total order value, depending on your country. Use the plugin to set a default tip as a percentage of the order value. To encourage bigger tips, set the default tip at the upper end of the usual amount in your country. Customers can then override the suggested tip as required.

Manage your delivery drivers

Most WooCommerce restaurant ordering systems use local drivers to deliver the orders.

You can manage your delivery drivers outside of the website. Alternatively, you can save time with the free Delivery Drivers for WooCommerce plugin. This WordPress plugin automates many of the manual tasks, connecting your drivers with your online systems and the customer.

Sell restaurant meal deals

WooCommerce Quantity Manager restaurant plugin

Lots of WooCommerce for restaurants websites provide special offers and meal deals. These are fantastic incentives to encourage customers to buy more.

Use WooCommerce for restaurants ordering with the Quantity Manager plugin to control how many items customers can buy from each category. For example, you might sell a meal deal for two people where they can buy 2 starters, 2 mains, and spend up to $15 on side dishes.

You can also use the official WooCommerce Dynamic Pricing plugin to create restaurant deals and special offers. For example, you can create buy one get one free (BOGOF) meal deals, or buy one pizza and get 50% off your second one. These deals can be global or specific to a category, so you can offer deals on pizzas or sandwiches while keeping the side dishes and desserts at full price, and so on.

Mobile ordering for restaurants

WooCommerce doesn't come with a mobile app for customers to order via their smartphones. However, most WordPress themes are fully responsive, which means they're mobile-friendly and look great on any device.

This means that your customers can view your foods and order from your restaurant online using their device of choice - no need to worry about setting up a separate mobile app!

Managing orders in your WooCommerce for restaurants' food ordering system

There are many ways to manage the online food orders that your restaurant receives in WooCommerce:

Email notification of new restaurant orders

When you receive an order, you will receive an email notification from WooCommerce. Your kitchen staff can monitor this email address and be notified as soon as an order arrives.

If you have a busy restaurant with many online orders, then keep the WordPress admin open on your screen during your restaurant opening hours. Train your staff to refresh the WooCommerce → Orders page regularly so they can take action as soon as a food delivery order is received.

WooCommerce for restaurants mobile app

The official WooCommerce iOS mobile app lets you view and manage restaurant orders from any Apple iPhone or iPad. It's often more convenient for restaurant owners and staff to use mobiles or tablets than desktop computers.

Auto-print new food orders to the kitchen

You can integrate your WooCommerce for restaurants' food ordering system with a GPRS printer. This will automatically print new online restaurant orders as soon as they're received. We recommend the WooCommerce Automatic Order Printing plugin.

Receive an alert when you receive a WooCommerce for restaurants order

Use YITH WooCommerce Desktop Notifications to automatically play a sound alert on your desktop computer, laptop, or tablet whenever you receive a new order.

If you'd rather receive a text when you receive a new order from your WooCommerce for restaurant website, try the SMS Alert Order Notifications plugin. You can also use the Twilio SMS Notifications plugin to send the customer a text when their order is ready.

WooCommerce can be integrated with many external systems. If you're using a specific system to manage your restaurant orders, look up how this can be integrated with WooCommerce.

Think creatively and you'll be surprised how easy it is to integrate your WooCommerce for restaurant ordering system with your existing kitchen processes.

Online ordering for multiple restaurants

So far, we've talked about creating a WooCommerce restaurant ordering system for a single location, using a WordPress food delivery plugin. With a couple of tweaks, you can extend this to take orders for multiple restaurants or entire restaurant chains. There are 2 ways to achieve this:

Method 1 – WordPress multisite, with a separate site for each restaurant

You may want to keep your WooCommerce for restaurants really separate, with unique content for each one (e.g. a different homepage, about page and contact us). If so, you can use WordPress multisite to create a separate sub-site for each restaurant in the chain. This is better than having completely separate websites because you get the best of both worlds: a single WordPress food delivery plugin installation with shared hosting and maintenance costs; with unique content for each restaurant.

WooCommerce for restaurant ordering will be active on each site. However, each site will have its own set of products and order notification settings, avoiding any crossover.

WPBeginner has an excellent article on How to install and set up WordPress Multisite Network. This is compatible with all the steps in the above tutorial.

Method 2 – Single website, with separate categories & order notifications for each restaurant

A simpler option is to take orders for each restaurant from your main WordPress website. There are two ways you can do this:

  • Create separate product categories for each restaurant. On the online food ordering system page for each restaurant, use WooCommerce Restaurant Ordering to list products from the appropriate categories.
  • Alternatively, use either the official Product Vendors add-on or the Dokan Multivendor plugin to add products from multiple vendors (treat each restaurant as a separate vendor). Each vendor has their own product categories. Enable the 'Category pages' option in WooCommerce Restaurant Ordering and the beautiful food order form layout will be used for each vendor's products.

Whichever method you choose, you can use the WooCommerce Multiple Email Recipients Notifications plugin to send order notifications to a different email address depending on which category the customer has ordered from. This lets you ensure that the new order emails are sent to the correct restaurant. As a result, your entire WooCommerce restaurant online  food ordering system remains on a single website - while taking orders from multiple restaurants.

Online Chinese takeaway ordering system

Case study: Online Ordering for Ciao Italia

Ciao Italia is an Italian restaurant in the US that started offering curbside pickup to its customers during the COVID-19 pandemic. They use our WooCommerce Restaurant Ordering plugin to let customers place their orders online from home.

Ciao Italia Ristorante one-page food order form

The restaurant displays its entire menu (including food, beverages, and a gift card) on a one-page order form. It does this by sorting the food items under different categories and displaying all of the categories on the menu page. Customers can simply click the (+) icon to add food items to the cart. When a customer adds an item to their cart, they see additional purchasing options in a lightbox.

Food order form lightbox with purchasing options

For example, you can use the lightbox to choose the quantity of food or beverages. If you're buying a gift card, then you can choose the value in any denomination. (Tip: They sell gift cards using the 'Customer Defined Price' option in the Product Add-Ons plugin.)

The one-page food order form makes it quick and easy for customers to place their orders and proceed to the checkout page.

Adam Tracksler from Bryce Creative developed the website. He was delighted with WooCommerce Restaurant Ordering:

In today’s environment of having to act nimbly for clients, the WooCommerce Restaurant Ordering plugin is the perfect solution for getting a website running quickly. We were able to launch on day one with the help of this plugin. It took all the heavy lifting out of the equation and let us focus on design. If you are debating whether or not this is the solution for getting a restaurant going — look no further, this is the plugin you want. The support is also top-notch!

Adam TrackslerBryce Creative

Want to set up online ordering for your restaurant in 15 minutes?

And there you have it! If you follow all the steps in this tutorial then you can create a complete online food ordering system with an easy-to-use WordPress food delivery plugin.

You've learned how to install and set up the WooCommerce platform to handle all of your menu's food products. You've also seen how you can use the WooCommerce Restaurant Ordering plugin to create customizable food order forms. Customers can choose their selections from each customer, and then place their order and pay online.

By using a WordPress food delivery plugin and WooCommerce as an alternative to Just Eat or other systems, your restaurant can save many thousands of dollars or pounds. It's easy to set up, easy to manage and will look really professional.

  • Easy plug-and-play setup.
  • Comes with full support and expert advice.
  • 30-day money back guarantee - love it or your money back!

Get WooCommerce Restaurant Ordering here, and start selling food online TODAY →

WordPress ebook plugin

If you're looking for a WordPress eBook plugin, you've come to the right place. This is the complete guide to listing and selling digital eBooks in WordPress. I'll show you how to choose the right WordPress eBook plugin for your site - whether you want an eBook library plugin with downloadable PDF's, or an eBook store plugin with e-commerce.

In this article, I'll teach you about 3 methods for creating a WordPress digital eBook library. Each method uses one of our table-based WordPress eBook plugins, and I'll recommend the best plugin for your needs. The plugins are ideal for creating a WordPress eBook library (like Scribd) or eBook store. The eBooks are listed in a searchable, sortable table layout with filters.

WordPress ebook plugin e-commerce
Jump straight to the instructions for the method you need:
  1. Method 1 - Create an eBook library with downloadable or embedded books
    This is a non-ecommerce option, as people can read eBooks online or download the eBooks. You can add any eBook file type, such as PDF, EPUB, MOBI or Kindle. People can then add them to their e-readers (like Kindle or NOOK) or smartphone (Apple or Android device). It's suitable for lists of free eBooks, or eBook membership sites (i.e. an ebook subscription service) where you sell subscriptions giving access to your downloadable WordPress eBook library.
  2. Methods 2 and 3 - Build an e-commerce eBook library
    This is a full e-commerce option, where people can view your eBooks in a searchable table and purchase each one individually. They will then receive a protected eBook download link that they can add to their library e.g. in Amazon Kindle or Barnes & Noble NOOK ebook readers. You can choose between two popular WordPress eBook store plugins: WooCommerce and Easy Digital Downloads.
  3. Perfecting your eBook library
    Whichever method you follow, use this section to add the finishing touches that will make your eBook digital library a success. I'll show you how to create filters to make your eBooks easier to find, plus extras such as adding embedded audio players or flipbooks to a WordPress audiobook library. You'll even learn how to create a private members-only ebook library that is hidden from public view.

Choosing a WordPress eBook plugin

Our WordPress eBook plugins are ideal because you can list lots of digital books on each page. Users don't have to waste time scrolling through multiple pages. You can even include extra data about each eBook such as the author, blurb, image, publisher, year - whatever you like! This also improves search engine rankings in Google.

Your users can quickly search, sort and filter the list to find an eBook they're interested in. They can then either click to download a WordPress eBook PDF or other format such as EPUB or MOBI (depending on the device they're using such as a Kindle, NOOK, or an Apple/Android device like an iPad or iPhone). Or if you're using an e-commerce plugin, then they can add eBooks to the cart directly from the table of eBooks.

I'll recommend a suitable WordPress eBook plugin in the relevant sections of this tutorial. Read about the method you're interested in, and I'll tell you how to set it up and which WordPress eBook store plugins to use.

Let's get started!

What can you sell with a WordPress or WooCommerce eBook plugin?

People use the term 'eBook' to mean lots of different things. In a nutshell, an e-book refers to any book or other document that you download and read electronically, or read online. It doesn't refer to printed books, or web content that you read directly on a website.

This includes:

  • Type of book - fiction or non-fiction, science fiction, storybook, thrillers, textbooks.
  • Any non-fiction genre - autobiographies, biographies, creative writing, history, journalism, law, memoirs, philosophy, religion, self-help.
  • Reference books - user manuals and handbooks, DIY books, travel guides, recipe books.
  • Academic publications - commentary, critiques, downloadable essays, reports, scientific papers, white papers.
  • Other ebook formats - music manuscripts, poetry, songbooks.

It's a diverse list, but what they all have in common is that they are downloadable and read on a computer, table or smartphone. That's what makes them an eBook.

Now we know what we're talking about, let's dive right in and learn how to create a WordPress eBook library like Scribd.

Method 1 - Create a WordPress eBook library with downloadable eBooks

Method 1 is about creating a digital library of eBooks similar to Scribd. It uses our Document Library Pro plugin to create a searchable, filterable table listing your eBooks.

This method is ideal if you want to create a WordPress eBook library with downloadable eBook links. Users can find a digital book and click to download it as an eBook PDF or whatever format you decide to use. It's suitable for free digital eBook libraries, and WordPress membership sites where people are given access to a protected eBook library e.g. ebooks with DRM.

Method 1 is NOT suitable if you want to sell each eBook individually - you'll need a WordPress eBook store plugin as well as an e-commerce plugin for that. If this is what you need then jump to Method 2 instead.

Method 1 has two straightforward steps:

  1. Add your eBooks to WordPress
  2. Use the WordPress eBook plugin to list eBooks in a table

Step 1 - Add your eBooks to WordPress

First, install Document Library Pro and use it to add your eBooks to WordPress. This is really easy because the plugin creates a dedicated 'Documents' section to the WordPress admin. In your case, 'Documents' are actually 'eBooks'!

Add each eBook as a separate 'Document':

  1. Go to the Documents → Add New page.
  2. Use the 'Document Links' section to upload the eBook. Alternatively, if it's hosted elsewhere (e.g. on Amazon Kindle), then you can add the URL here. Either way, users can click on a button in the eBook library to access the eBook.
  3. Add the information that you want to display about each eBook:
    • Title - add the eBook title.
    • Categories and tags - add any categories or tags that will let people sort and filter the eBook in the digital library.
    • Featured Image - upload an image, if you're planning to include these in the WordPress eBook library. This will probably be an image of the eBook front cover or author, similar to how ebook retailers like Amazon (United States) or Kobo (Canada) do it.
    • Excerpt - Use this to add the eBook's blurb or description. The WordPress eBook plugin can include this as a column in the table.
    • Content - Use this to add any extra information that you want to display in the eBook library. In the bonus section later in this tutorial, I'll also show you how to embed eBooks directly into the content field so that people can read them online.

Adding eBooks in bulk

If you have too many eBooks to add manually, that's fine. Document Library Pro provides several ways to import eBooks in bulk.

Create any extra fields for your eBook library

If you need to include any additional fields in your eBook then you can do this by creating custom fields and taxonomies. As a general rule, use custom fields for storing unique data about each eBook such as ISBN number or barcode. Use taxonomies for filterable data such as topic, publisher, year or author. For example, you might create a taxonomy that marks bestsellers or ebooks with DRM. This way, customers can easily sort them by new releases, popular ebooks, or DRM-free ebooks.

Once you've created the extra fields for your eBook post type, you can add the data for each eBook. You can list all these extra fields in the digital library using the WordPress eBook plugin - which brings us to Step 2...

Step 2 - Use the WordPress eBook plugin to list eBooks in a table

By now, you've added your eBooks to WordPress. Great! Now comes the fun part - it's time to create your WordPress eBook library similar to the Kindle store.

Navigate to the 'Pages' area in the WordPress admin and find a page named 'Document Library'. Change the name and permalink to something related to eBooks, such as 'eBook Library'.

Next, view the page and you'll see the first draft of your WordPress eBook library.

WordPress eBook library plugin

It looks pretty good straight out of the box, and you can use the plugin settings page to fine-tune it as needed. For example, you can change how the download links work, and which columns appear in the table.

If you've structured the eBook library into categories, then you can also enable the 'Folders' option. This will list each eBook category separately. Users can click on a category name (i.e. a folder) to view the eBooks from that category.

That's everything you need for a professional-looking WordPress eBook library. If you want to make any further changes to it, skip to the section on Perfecting your eBook Library.

Sell membership access or add ebook subscription service to your WordPress eBook library

So far, I've shown you how to create a table of eBooks that is available for everyone to access. If you don't want this, then there are a few WordPress plugins to protect your eBook library and restrict it from public view. Here are 3 suggestions of how you can achieve this.

Hide the eBook library with Password Protected Categories

Our WordPress Password Protected Categories plugin lets you put all your eBooks in a category and password protect that category. This will password protect your eBook digital library so that only people with the password can access it.

Use Groups to restrict access to authorized users only

The free Groups WordPress plugin is an easy-to-use free WordPress membership plugin. It offers an easy way to create 'hidden' areas of your website that only logged in users with access to the appropriate 'Group' can access.

This method is useful to making a WordPress eBook library available to pre-approved people only similar to Kindle Unlimited. For example, you might want to make it available to members of your organization, employees, or book club. Each person needs to have a user account on your WordPress website. You need to give each person access to the eBook Library Group manually. (If you want to sell access to the eBook library then you can still use the Groups plugin - but you'll also need some extra plugins which I'll cover in the next section.)

Restricted eBook library plugin
Install the Groups plugin, create your eBook library as described above, and create a Group called 'eBook Library' or similar. Go to to the eBook library page with the product table and restrict it to members of the eBook Library Group.

To give people access to the eBook library, you need to add them as users in WordPress (Users → Add New). Select the eBook Library Group from the dropdown on the Add/Edit User page. When they log into their account, they will be able to access the protected eBook library.

Use the Groups plugin documentation to make further changes. For example, you can create a message that will appear when unauthorized users try to access the hidden eBook library.

Sell subscriptions to your WordPress eBook library

You can sell access to the eBook library using the WooCommerce plugin with the Groups for WooCommerce add-on - plus Subscriptions if you want to take regular payments. This builds on the 'Groups' method in the previous section by integrating the hidden eBook library with the world leading e-commerce plugin and the ability for people to subscribe online.

Some tips on which combination of plugins to use:

  • If you want people to make a one-off payment to your eBook library then you can do this using Groups, WooCommerce and Groups for WooCommerce. Sell access to the eBook Library Group as a product in WooCommerce, so that people can buy it on your website.
  • If you want people to make an ongoing subscription to the digital eBook library, then you'll also need the Subscriptions plugin. You still need to sell access to the eBook Library Group using WooCommerce, but buying this product will sign people up to an ongoing subscription.  This is similar to the Kindle Unlimited implementation. Payment will be taken regularly (e.g. using PayPal or Stripe) so that the customer can continue accessing the eBook library. If they ever cancel the subscription then their access to the Group will be revoked.

Method 2 - Build an e-commerce eBook library

Method 1 showed you how to create a downloadable eBook library - either public, or restricted to specific people. In Method 2, I'll tell you about WordPress eBook plugins for selling eBooks individually. With these plugins, people can view a table listing all your eBooks. They can then choose to buy specific eBooks from the list. This is a full e-commerce solution - customers can pay for their eBooks online and receive the downloadable eBooks via a secure link.

There are 2 free WordPress e-commerce plugins that are ideal for selling eBooks:

  • Easy Digital Downloads - EDD is famous for selling digital products such as eBooks. Coupled with a table-based plugin for displaying your eBooks, it's the perfect way to create an e-commerce eBook library.
  • WooCommerce - Powering over 41% of all online shops, you can use WooCommerce to sell anything online - including eBooks. Like Easy Digital Downloads, the default WooCommerce store layouts aren't really suitable for eBooks. However, you can use it with a table-based WordPress eBook store plugin to create the perfect layout, complete with Buy buttons.
  • You can also use other e-commerce plugins such as WP ecommerce. I haven't featured them all in this article, but they all work with Posts Table Pro for listing your eBooks.

I'll tell you how to create a WordPress eBook library using both of these e-commerce plugins. The method is slightly different for each, so we'll start with Easy Digital Downloads and then move on to WooCommerce.

Create an Easy Digital Downloads eBook store

Easy Digital Downloads Table PluginEasy Digital Downloads works perfectly with our Posts Table Pro plugin - use them together to build a fantastic eBook store. Your eBooks will be listed in a table layout with buy buttons.

People can read about the eBooks in the table, and add as many as they like to the cart. They can then click through to the Easy Digital Downloads checkout and pay online. Once the order is complete, Easy Digital Downloads will send them a secure link to download the eBook in whatever format you've uploaded (PDF, EPUB, MOBI etc.).

How to set it up

  1. First install the free Easy Digital Downloads plugin. Use the official documentation to set up payment methods, taxes and more.
  2. Add each eBook as a separate downloadable product via Downloads → Add New.
  3. Next, create a new page (Pages → Add New) which you'll use as your main eBook store page.
  4. Finally, follow the steps in our other tutorial about how to create Easy Digital Downloads table layouts. This covers everything you need to know to create an amazing eBook store layout using Posts Table Pro. You can create a single table listing all your eBooks, or multiple tables listing eBooks from different categories. There are over 50 options, so go through the tutorial and create the perfect eBook store.

Build a WooCommerce eBook store

As a WordPress website owner, another way to sell ebooks is through WooCommerce. You can use the WooCommerce plugin to create an ebook subscription site or ebook store. Paired with the right WooCommerce ebook plugin, this e-commerce plugin is perfect for selling digital products (or digital downloads) like ebooks.

WooCommerce Directory Plugin

 

To display the eBooks in a searchable, you'll need our WooCommerce Product Table plugin.

The way it works is that you'll add each eBook as a separate WooCommerce product. You'll then use the WooCommerce Product Table to list the eBooks in a searchable table with filters. As with the Easy Digital Downloads eBook store plugin, you can list all your eBooks in a single table or create separate tables for each category. Either way, it's easy for customers to find your eBooks, pay online, and receive a secure download link via email.

See it in action on our WooCommerce eBook plugin demo page.

How to set it up

  1. First install the free WooCommerce plugin. Use the WooCommerce setup wizard and documentation to set up your standard store pages, tax settings, payment gateways (e.g. PayPal and/or Stripe for credit and debit card payments), etc.
  2. Next, add each eBook as a product (Products → Add New). Choose the 'Downloadable' product type in the Product Data section of the page. This will open up some extra options for you to add the downloadable eBook file(s) in whichever format you choose. This might be PDF, MOBI, EPUB or similar.
  3. Finally, create a new page (Pages → Add New) which will be used for your eBook store. Use the WooCommerce Product Table knowledge base to list your eBooks in a table layout with all the information you want to display. It's really flexible and you can even store extra data about your eBooks using product attributes, custom fields and taxonomies. If you want to offer different price options then you can use variable products for this. Each price option will appear as a variation dropdown list next the add to cart button.

Perfecting your eBook library

WordPress eBook store plugin

Whichever of the above WordPress eBook plugins you use, don't forget to add the finishing touches.

Adding filters to the eBook library

WordPress eBook plugin with filters

The most important extra features that you need to add are filters. You can add filter dropdowns above the eBook library for various options including categories, tags and any custom taxonomy.

If you're using WooCommerce Product Table then you can also add attribute/variation filters above the table, and filter sidebar widgets. All of these will increase your eBook sales by making them easier for people.

Embed eBooks to read online

So far, we've assumed that people will download the eBooks to their computer. Perhaps you don't want this - or perhaps you want to provide an online preview of the eBook before people download the eBook.

When you add the eBook - either as a document or an e-commerce plugin, depending on which method in this tutorial you've used - you need to embed it in the main content field/description.

There are lots of service that let you embed eBooks into WordPress, and they will all work with the plugins in this tutorial. For example:

  • Use the free Google Drive Embedder plugin to embed the eBook from Google Drive.
  • Use a flipbook plugin such as FlipSnack to embed a page turning flipbook.
  • Or use the free PDF Embedder plugin to embed a PDF in WordPress.

Either way, people will be able to view the eBook and read it online. However, they won't be able to download it unless you have separately provided a download link.

Add embedded audio and video players

WooCommerce Audio Store
If you're selling audio books or have a promotional video, then you can embed media players directly into the main eBook library page. For example, you might be creating a WordPress audio book library and want to include MP3 players for your audio books.

To do this, add an embedded audio or video player directly into any of the text fields in your eBook library (such as the main content area or a custom field).

Go to the plugin settings page and tick the 'Shortcodes' option. This tells the WordPress eBook library plugin to render the embedded media player properly, instead of just as plain text.

Next, your visitors will be able to listen to audio tracks or watch video directly from the main eBook library page.

Add quick view buttons

WooCommerce Product Table Quick View Magnifying Glass
Add buttons to show extra images, the blurb, and more in a quick view lightbox.

Add buttons to show extra images, the blurb, and more in a quick view lightbox.

If you're building a WooCommerce eBook store, then you can enhance your book lists with the WooCommerce Quick View Pro plugin. This handy plugin adds 'quick view' buttons (which you can rename to anything you like) to your eBook library pages. Customers click these buttons to view more information about your eBooks in a lightbox, without having to visit the single product page.

Here are some examples of how you can use quick view to improve your WooCommerce eBook library:

  • Upload multiple images to the product gallery, and display these in the quick view lightbox. Use the images to preview different pages from your eBook, just like Amazon's 'Look inside' feature or Kobo's 'Preview Now' feature.
  • Add the blurb from the back of your eBook to the product short description, and display this in the quick view.
  • Sell product variations (e.g. different eBook file formats or printed book options) in the quick view.

The perfect WordPress or WooCommerce ebook library

These WordPress eBook plugins come with over 50 options for changing how the eBooks are listed in the library. Choose whichever plugin best meets your needs:

Think about which eBook plugin will help you list your eBooks even more effectively. Spend some time experimenting to find the right combination of options, and make your WordPress eBook library a big success.

WooCommerce custom field plugin

WooCommerce comes with various fields for storing product data. There's the product name, long and short description, price, images, stock, weight, dimensions, etc. But what happens if you want to store and display extra product data, such as WooCommerce custom taxonomies?

In this article, I walk you through creating WooCommerce custom taxonomies for products. We'll look at the difference between WooCommerce custom fields and taxonomies. Also, we'll consider the different types of product data. You will also learn how to add custom taxonomies to store extra information about WooCommerce products.

At the end of this guide, you will have mastered how to:

And remember, you can do all this without writing a single line of code!

Ready to start displaying products with custom fields & taxonomies? But before we dive in, let's quickly examine how to create and display a WooCommerce custom product taxonomy.

What is product taxonomy?

A product taxonomy is a means of structuring products into different groups and subgroups based on their features, attributes, and characteristics. It enables customers to find the products they want without wasting time. It also helps you as a seller organise your products, which makes it easier to manage your inventory, sales and marketing effort.

The categorization can be based on size, colour, style, materials, target market, price range, or anything else.

What is a WooCommerce custom taxonomy?

In WooCommerce, a custom taxonomy organizes and classifies products to show advanced custom fields beyond the standard product categories and tags. It allows you to group products based on specific product attributes using hierarchical or non-hierarchical groupings.

To create a custom taxonomy in WooCommerce programmatically, you might have to use a new set of labels. Besides, you'll have to register the taxonomy with the WordPress core and associate the taxonomy you wish to classify.

An easier option is to create a WooCommerce taxonomy using a WordPress plugin. You can use a plugin to create custom taxonomies such as brands, sizes, seasons, materials, and other relevant product data. Keep reading to discover the best WooCommerce taxonomy plugins for creating, displaying, and filtering taxonomies.

What are the benefits of using WooCommerce custom taxonomies?

Using WooCommerce custom taxonomies provides many benefits. These include better product organization, enhanced filtering, improved navigation, flexibility, and higher visibility. Integrating relevant keywords in your custom taxonomy terms enables more laser-focused product pages for better SEO.

What's the difference between WooCommerce custom fields and taxonomies?

We usually use the phrases 'custom fields' and 'custom taxonomies' in relation to WooCommerce product data. However, many people don't know exactly what they are and their differences. WooCommerce custom fields are used to store arbitrary, one-off information about a product. On the other hand, custom taxonomy is used for grouping things together. This reflects in the way you add custom fields and custom taxonomies for products in the WordPress admin:

Custom fields appear in the main column of the Add/Edit Product screen. This is where you add other unique product data such as title, description, price, etc.

In contrast, custom taxonomies appear in the right-hand column under the product categories and tags. Each WooCommerce taxonomy term should be selected for multiple products like categories and tags.

Difference between WooCommerce custom fields and taxonomies

When should I use custom fields & when should I use a WooCommerce taxonomy?

Once you understand the difference between a WooCommerce custom field and taxonomy, it becomes more obvious when to use each one.

As a rule of thumb, you can decide between custom fields and taxonomies by asking: "Is the data I am adding unique to each product, or does it apply to multiple products?" If the data is unique for each WooCommerce product, you need a custom field. However, if you want to select the same value for several products and use it to group them together (e.g., via a product filter), then you need a WooCommerce taxonomy.

Here are some examples to help you choose:

  • WooCommerce clothes store displaying the color of each product. If you're selling clothes in WooCommerce, you'll probably want customers to be able to find products by color. You'll have multiple products of each color. By creating a WooCommerce custom taxonomy called 'Colour', customers can filter the list of products to find the color they like. This wouldn't be possible with a custom field.
  • WooCommerce second-hand site storing 'condition' information about their used products. If you're selling used goods like eBay, you'll need a field to store details of any damage, etc. The description of each item's condition will be unique to that product, so you should create a WooCommerce custom field.
  • WooCommerce product directory with a large product database. WooCommerce directory-style websites with large numbers of products often list extra product data within the directory listings view. For example, a book directory might include data for author, publisher, and year.

Use custom fields and taxonomies together

To use the 2nd example above, a store selling used goods might want a WooCommerce taxonomy called 'Condition' AND a custom field called 'Condition Description'. The 'Condition' taxonomy would include the terms "New," "As New," and "Used," which apply to multiple products.

You could create product filters so customers can narrow their search based on the overall condition. The 'Condition Description' custom field would provide unique information about the exact condition of the product and any damage.

Video tutorial - WooCommerce custom fields & taxonomies

In this video tutorial, you can watch us create WooCommerce taxonomies and custom fields and display them on a WordPress website. There are also full written instructions below:

How to create a WooCommerce custom taxonomy

Easy Post Types and Fields is the best plugin for creating a custom taxonomy for WooCommerce products. It's 100% free and has everything you need to add extra taxonomies to your store.

WooCommerce products are custom post types in WordPress. That's why you need a plugin which lets you add taxonomies to a WordPress post type.

Other plugins like Advanced Custom Fields (ACF) let you create custom fields but not taxonomies. Easy Post Types and Fields lets you do both.

Next, I'll show you how to create WooCommerce custom taxonomies with the free Easy Post Types plugin. After that, you'll learn how to display them on the front end, and how to let customers filter by taxonomy.

Setup instructions

Here's how to use Easy Post Types as a WooCommerce custom taxonomy plugin:

    1. Go to Plugins → Add New in the WordPress admin and search for 'Easy Post Types and Fields'.
    2. Install and activate the plugin by Barn2. Skip through the setup wizard because you don't need to create a new post type.
    3. Go to the 'Post Types' section on the left of the WordPress admin and click on the 'Existing Post Types' tab.
    4. Find the 'Products' post type and click on the Taxonomies button for it.
    5. Now set up your WooCommerce custom taxonomy:
      1. Add the Taxonomy Slug (ideally 1 word, lowercase).
      2. Add a plural and singular name (label). This will only appear in the WordPress admin.
      3. Choose whether or not you want the custom taxonomy to be hierarchical. Hierarchical taxonomies are like product categories, where you can create multi-level nested structures with parent and child categories. Non-hierarchical taxonomies are like tags, which are flat and can't be structured.
      4. Click to add the taxonomy to WooCommerce.

Now go to the Edit Product page, and you'll see the custom taxonomy on the right-hand side, under the categories and tags. Add one or more taxonomy terms for each product, just like standard product tags.

You'll also see a section for managing your new WooCommerce taxonomy under the 'Products' section of the WordPress admin. For example, if you created a taxonomy called 'Brand' then a 'Brands' link will appear there.

Displaying WooCommerce custom taxonomies on the front end

Display extra WooCommerce product data
Editing the template files for your products' taxonomy archive pages is ideally the only way to display custom taxonomies for WooCommerce products. However, this involves a bit of coding knowledge.

But the good news is that there's a handy WordPress plugin to list products in a table and extra data, such as WooCommerce custom taxonomies. It's an ideal way to display products with extra information, as everything is presented in a structured tabular format. You can add product tables to any WordPress page, your main WooCommerce shop or product category pages, or even a single product page.

The WooCommerce Product Table WordPress plugin is one of the best for displaying custom taxonomies. This is because it supports all the usual WooCommerce product data, plus custom fields and custom taxonomies. Each item of product data is listed as a separate column in the table.

Customers can search or sort the table by any product custom taxonomy term. They can also filter by taxonomy via handy dropdown lists above the table. The WordPress plugin allows you to create WooCommerce tables with only products as a specific taxonomy term.

Comparatively, this is much easier than modifying your WooCommerce template files. Moreover, you get all the other benefits from product table layouts, such as improved conversion rates.

How to create product tables with WooCommerce custom taxonomies

Setting up a WooCommerce Product Table with all the extra product data is easy:

  1. Get WooCommerce Product Table. Download the WordPress plugin using the link on the order confirmation page and email.
  2. In the WordPress admin, go to Plugins → Add New. Upload the plugin files, and install and activate the plugin.
  3. Navigate to Products → Product Tables and set up your first table.

Below, I'll tell you which settings to choose to display WooCommerce custom taxonomies in different ways.

Display custom taxonomies on the WooCommerce shop page or product category archive

The first page of the product table builder lets you choose which method you'll use to add the table. Select the "Display on a shop page (e.g. main storefront, category page, etc.)" option.

Create page of table builder

On the following page, choose which templates to display the custom taxonomies table on.

Shop templates page of table builder

Use the 'Columns' page of the table builder to choose what product data to display. All the custom taxonomies for the 'Products' post type in your store will appear in the list of columns. Select as many as you need, and use the pencil icon to rename the column heading.

WooCommerce custom taxonomy column

This will add the product table to your main shop page and whichever other template pages you selected. The list of products will include the WooCommerce custom taxonomies.

WooCommerce brands product table view
A product table on the WooCommerce shop page with a Brands custom taxonomy

How to list products with WooCommerce taxonomies on a standard page

Alternatively, you can add product tables to normal WordPress pages with custom taxonomy columns. This will look similar to the screenshot above, but won't affect your main shop pages.

The instructions for this are mostly the same as above. However, you should select "Add to a page using a block or shortcode" at the start of the table builder.

Create page of table builder

On the following page, either leave it set to "All products" or select which products you wish to list in the table.

Select products page of table builder

The final page of the table builder will provide a shortcode for adding the table to a page. Either insert this onto the page, or add a 'Product Table' Gutenberg block and select the table you just created.

Ready - Final screen of table builder

The page will then display a product table complete with columns for the WooCommerce custom taxonomies.

How to show WooCommerce custom taxonomies on the single product page

You can also use the shortcode method described above to show custom taxonomies on the single product page. However, you need to do it a bit differently because we only want to show one product in each table.

This time, use the 'Select products' page of the table builder to select which individual product you'll be displaying the WooCommerce custom taxonomies on.

WooCommerce table builder select individual products

On the 'Columns' page of the table builder, add custom taxonomy columns and don't bother with other columns like 'Name'. That's because this information is already present on the single product page.

You can then paste the table's shortcode onto the single product page, for example in the short description field. This will display the WooCommerce custom taxonomies for the selected product. In this screenshot, there are columns for a custom field called 'size', a custom taxonomy called 'fabric', and a stock column. I have hidden elements such as the search box which aren't needed on the single product page (you can do this at Products → Product Tables → Settings).

WooCommerce custom fields taxonomies single product page

List WooCommerce products with a specific custom taxonomy term

By default, your WooCommerce product tables will list all the products in a table. This is perfect if you plan to have a single table listing your entire WooCommerce inventory.

However, you can also create product tables listing products from a specific category, tag, custom field, or WooCommerce custom taxonomy term.

To do this, use the 'Select products' page of the table builder to select which taxonomy terms you want to display the products for. When you enable the 'Select specific products' option, the list will automatically include all the custom taxonomies for the 'Products' post type on your store. Select a taxonomy (e.g. Brand in the screenshot below) and then which term(s) you wish to display the products for ('Woo' or 'Ninja' in my example).

WooCommerce Product Table builder select custom taxonomy

Let customers filter by WooCommerce taxonomy

So far, we've talked about how to display WooCommerce custom taxonomies on your website. In addition to this, your customers can benefit from being able to filter the list of products by taxonomy. Product filter by custom taxonomy allows customers to easily find whatever product they're looking for.

There are two ways to add taxonomy filters, depending on whether or not you're already using WooCommerce Product Table to display your taxonomies.

Use WooCommerce Product Table to add taxonomy filter dropdowns

WooCommerce Product Table comes with taxonomy filters which you can display as dropdown lists above the list of products. You can add a separate filter for each custom taxonomy (plus other data such as attributes, variations, categories and tags - instructions here). Customers choose a taxonomy term from the dropdown and use it to filter the list of products.

You can create WooCommerce product filter by custom taxonomy in the table builder. Your WooCommerce custom taxonomies will appear in the list of available filters. Add as many as you like. 

WooCommerce music store filter by genre
This WooCommerce music store added a Genre custom taxonomy filter

Add advanced WooCommerce taxonomy filters with the Product Filter plugin

WooCommerce faceted search filters
A WooCommerce shop with taxonomy filters for Gender, Color, Size, and Activity

For more advanced and flexible custom taxonomy filters, you can use the WooCommerce Product Filters plugin. This comes with many taxonomy filters, including checkboxes, radio buttons, clickable images, range sliders, and much more.

The WooCommerce Product Filters plugin offers a wide range of customization options for displaying taxonomy filters. You can choose from different styles such as checkboxes, dropdowns, images, image labels, or even color swatches. This means that you can create a taxonomy filter that matches your store's design and makes it easy for customers to find the products they are looking for.

For example, if you have a clothing store and want to allow customers to filter products by color, you could use color swatches as the taxonomy filter. This way, customers can easily click on the color swatch they want and see all the products available in that color.

Alternatively, if you have a store that sells products of different sizes, you could use a dropdown menu as the taxonomy filter. This would allow customers to select their preferred size and see all the products available in that size.

Add and edit custom taxonomies for products in bulk

Finally, let's talk about what happens if you want to add lots of taxonomies to your products. It can be a pain to add and remove them from each taxonomy individually, but you can save time by using the Setary app.

Setary is a bulk product editor for WooCommerce. It lets you edit any type of product data, including - you guessed it - custom taxonomies. You can either do this from a spreadsheet-style interface, or by filtering to select certain products and bulk-applying the taxonomies to them. Either way, it's a huge time-saver if you need to add or remove taxonomies in bulk.

If you've used a separate plugin to add your taxonomies then you need to enable in Setary. To do this, go to WooCommerce → Settings → Advanced → Setary and select the plugin that you used to add the custom taxonomies to WooCommerce:

Setary select plugins to bulk edit data

You can then select the taxonomies to include as columns in Setary's spreadsheet editor:

Setary WooCommerce spreadsheet bulk editor columns

Take control over your WooCommerce product taxonomies

In this article, we have covered the best plugins for adding and displaying product taxonomies in your WooCommerce store:

  • The free Easy Post Types and Fields plugin makes it easy to add custom taxonomies to your WooCommerce products.
  • WooCommerce Product Table displays taxonomies on the front end of your website. You can do this on the single product page, your main shop pages, individual product pages, and list products by taxonomy.
  • The WooCommerce Product Filters plugin adds advanced filters so that customers can find products based on their taxonomy terms.
  • Setary App lets you add and remove custom taxonomies from WooCommerce products in bulk, saving hours of manual work.

Armed with these tools, you can add a wide range of custom data to your products and take your store to new levels of success. Mix and match the plugins to get the full benefits of WooCommerce custom taxonomies in your store. The possibilities are endless!

WooCommerce custom product fields plugin

This is the complete guide on how to create and display WooCommerce custom fields. You'll learn how to show extra product data and sell extra product options on your website.

59% of shoppers are more likely to buy from a store that allows for product customization. WooCommerce comes with various types of data which you can add and display about your products. It also comes with a variable product type, with dropdown list fields to allow customers to select different options. But what if you want to create your own custom fields and display them in your ecommerce store?

Read on, or watch this video to find out!

In this tutorial, I'm going to reveal two easy ways to create WooCommerce custom fields and display them on the shop or product page:

  1. Extra product option fields which allow customers to customize the product.
    WooCommerce extra product options file upload
  2. Custom fields for displaying extra data about the product.
    WooCommerce product page custom fields

Keep reading to learn more about each type of custom field in WooCommerce and how to set them up, step-by-step.

What are WooCommerce custom product fields?

When people talk about WooCommerce custom fields, they typically mean one of two things:

  1. Selling extra product options, as an alternative (or enhancement) to variationsThis involves installing a WooCommerce custom product fields plugin which displays dropdown lists, checkboxes, radio buttons, text fields, etc. for the customer to complete before adding the product to their cart. You can either do this by displaying existing variations in more interesting ways, or by creating custom options using a plugin. Technically, extra product options aren't custom fields at all - they're better known as product add-ons! However, a lot of people refer to them as custom fields. They're perfect for adding a WooCommerce text field to the product page, and collecting other data and options from customers.
  2. Adding extra information about the productThis is the classic use of custom fields. In WordPress, custom fields are used to add additional data to posts, pages, or products. You use these to store and display extra information on your website. For example, if you're already using all the built-in types of product data for other purposes then a WooCommerce custom field plugin can display additional text for you.

Continuing on, we will explore the steps involved in adding both types of custom fields to your WooCommerce products. You will also learn how to make the custom fields visible on the shop and product page.

By following the steps outlined in this guide, you will be able to effectively use custom fields in WooCommerce. This will enhance your store and improve the shopping experience for customers. Whether you're looking to add extra information about your products or offer additional options, WooCommerce custom fields are a powerful tool to help achieve your goals.

Using custom fields to provide options and collect information from customers

WooCommerce extra add-on fields with images, swatches and text field
A product with various extra fields added, as an alternative to variations

First, we'll look at how to use custom fields in WooCommerce to show extra information about your products. This involves offering additional options to customers.

This type of custom field goes beyond merely displaying extra information about a product. It offers customers the option to select additional features before adding the product to their cart.

This method is a remarkable alternative or improvement to product variations. That's because it allows you to add a wide range of field types, including radio buttons, checkboxes, and text inputs - either as custom options, or by taking existing variations and displaying them in more interactive ways. By adding extra fields on the product short description page, customers can provide more choices and data that they can receive along with their orders. For example, adding a WooCommerce custom text field on the product page lets customers enter their own text to be submitted with their order.

Once the customer selects the custom fields from the product page, this is displayed as a custom order field in order notification emails etc. That way, the store owner knows which options the customer has chosen.

Different types of custom fields for product options

There are a wide range of custom field types which you can add to product pages:

  • Checkbox: Allow customers to tick boxes (multiple choice, so they can select as many as they like).
  • Radio button: A custom field which forces customers to select one option from a list.
  • Text: Let customers enter custom text, such as a personalized message or allergy information.
  • Text area: Collect entire paragraphs of information from the customer, suitable for longer messages.
  • File upload: Let customers upload files while placing the order. You can control details like the file types and maximum file size.
  • Number: Add a custom field to collect numeric information. This is useful for things like phone numbers, measurements or dimensions (especially when used with the price formula custom field type).
  • Color swatches: A more visual type of WooCommerce custom field, which lets customers choose from a choice of colors.
  • Dropdown: Let customers to choose an option from a dropdown list.
  • Customer-defined pricing: This custom field type provides a "Name your price" box where customers can enter an amount to be added to the product price.
  • Price formula: This is a more advanced WooCommerce custom field type. Use it to create a WooCommerce price calculator with a custom formula to calculate the price based on the information that the customer submits. This type of custom field is popular for creating a measurement price calculator for products priced by size, weight or area.
  • Date: Add a date custom field to the WooCommerce product page.
  • Products: This is less of a custom field than the other types. It displays selected products above the add to cart product and is a good tool for upselling additional products.
  • Visual editor: This is more like the classic definition of a custom field, which lets you display read-only data on the WooCommerce product page. Use this to enter static information such as headings or introductory sentences, instead of fields for the customer to fill in.
  • HTML: This custom field is like the visual editor field but more technical. You can use it to enter HTML that will appear as static information on the WooCommerce product page.

Introducing the Product Options plugin

There are several WooCommerce custom fields plugins available for adding extra product information to your store. However, when it comes to finding the best solution for letting customers select extra product options during checkout, we highly recommend WooCommerce Product Options. This plugin stands out as the best option for adding custom fields to your products and displaying them during the checkout process.

You can add a wide range of options that appear as custom fields for the customer to select. In fact, it supports all the custom field types listed above. Shoppers can complete these extra custom fields and add them to their cart from the following locations:

  • The individual product page.
  • From your main shop and category pages, if you're using WooCommerce Product Table or WooCommerce Express Shop Page.
  • From a quick view lightbox, if you're using WooCommerce Quick View Pro. (Customers can access the lightbox from the main shop page or product category pages, so it's a quick way to select add-on custom fields without having to visit a separate page for each product.)

1a. How to create custom fields on product pages

Now we get to the tutorial part of this article. First, I'll tell you how to add custom fields to your WooCommerce products. Afterwards, I'll discuss the options for displaying custom fields on product pages and other shop pages.

  1. Install WooCommerce Product Options on your WordPress site.
  2. The plugin setup wizard will open when you activate the plugin. Use this to activate your license key.
  3. Next, go to Products → Product Options.
  4. Click 'Add New' to create a new group of product options. This will be your group of WooCommerce custom fields. Name it whatever you like.
  5. Use the onscreen instructions to add as many custom fields as you like. For each one, scroll down to configure additional options for each custom field. For example, you can use the price options to increase or decrease the product page based on the custom fields selected. Some field types can only be created directly in the plugin, and others also let you select existing variations to display.
WooCommerce Product Options select products categories

Use the 'Advanced' section to configure additional options. For example, you can add minimum and maximum quantities for some of the custom field types. You can also add conditional logic to your WooCommerce custom fields so that the fields appear conditionally based on the user's selections. This is good if - for example - you want customers to be able to tick a 'Customize this product' to reveal the hidden custom fields.

conditional logic comparison

1b. How to set up custom fields on shop and category pages

As a front end plugin, WooCommerce Product Options seamlessly displays custom field data on the WooCommerce product page. Once you've added your custom product option fields and selected which products they will appear of, they will start appearing straight away.

However, this requires the customer to visit a separate page for each product they want to fill in custom fields for. That might work for your use case, or you might also like customers to be able to select custom fields on the shop page, category pages, and so on. There are 2 easy ways to do this. I'll tell you about these next.

Method 1 - Display WooCommerce custom fields on a shop page order form

You can use the WooCommerce Product Table plugin with WooCommerce Product Options to display the extra options on your main shop pages. This will replace your usual store layout with a structured product table view, complete with a 'Buy' column. The buy column contains all the purchase options for adding the product to the cart. This includes product variation dropdowns, product add-on custom fields, and a quantity picker.

Displaying WooCommerce add-ons in the WooCommerce Product Table
Example of WooCommerce Product Table used with Product Options

Customers can quickly find the products they want, fill in all the custom fields, and add them to the cart - all from the shop and category pages. This is a good option if you want to add a custom field to a product category, which you can do by enabling the table view on category pages.

Setup instructions

  1. Install the WooCommerce Product Table plugin on your WordPress site.
  2. Use the plugin setup wizard to choose the main options for your product tables.
  3. Select the option to display the product table layout on a shop page.
    Create page of table builder
  4. On the next screen, select which WooCommerce shop pages you want to display the order form with custom fields on.
    Shop templates page of table builder
  5. When you choose your table columns, make sure you include a 'Buy' column. The custom fields that you added using WooCommerce Product Options will appear here.
    WooCommerce Product Table columns

And that's it! Your shop pages will now show product tables complete with WooCommerce custom fields.

Display product option custom fields in a quick view lightbox

Maybe you want customers to be able to fill in the custom fields without visiting individual product pages, but you don't want to change or clutter up the shop page. That's fine.

The solution is to use the WooCommerce Quick View Pro plugin to add 'Quick View' buttons to your shop and category pages. Customers will use these to launch a product lightbox containing the WooCommerce custom field options for that product. That way, they can easily fill in the custom fields and add to the cart, without having to visit the product page.

WooCommerce-Product-Options-Integration-with-Quick-View-Pro
Example of Product Options used to display the custom fields in a WooCommerce Quick View Pro lightbox

Setup instructions

  1. Install the WooCommerce Quick View Pro plugin on your WordPress site.
  2. Use the setup wizard to choose what you want to include in the quick view lightbox. Make sure you include the add to cart button, as the WooCommerce custom field options are attached to this.

And that's it! This will add quick view buttons to your shop pages, linked to lightboxes containing your WooCommerce custom fields.


Using custom fields to store extra product data

So far, we've learned how to add custom fields to the WooCommerce product page which the customer interacts with. This involves things like adding some text, selecting options, and so on.

But that's not really the technical meaning of the term 'custom field' in WordPress! A WooCommerce custom field actually refers to something different: a custom meta field which is attached to the 'products' post type.

In part 2 of this tutorial, we're going to focus on custom fields in the technical sense of the word. This is all about displaying extra data on your WooCommerce products, rather than providing editable fields for customers to interact with.

WooCommerce comes with a range of standard fields for storing and displaying information about your products. This includes data such as the product title, price, categories, tags, attributes, tags, dimensions, stock information, and so on. Here, we're talking about how to add a static WooCommerce text field on the product page. That's why it's different from adding custom fields for your customers to fill in.

However, sometimes the built-in WooCommerce product data isn't enough. When that happens, you need to install a WooCommerce custom fields plugin and add some additional fields.

In this section, I'll show you how to use the best plugin to add custom fields to WooCommerce. I'll also show you how to display them on the front end of your shop and product pages like this:

WooCommerce product table custom field columns
WooCommerce Product Table plugin displaying custom fields in the front end

But before we start, I'll explain the difference between custom fields and taxonomies to make sure that custom fields are actually what you need.

Custom fields or taxonomies?

Lots of people wonder "What is the difference between a custom field and a custom taxonomy"? It's a valid question because they're both ways of adding and displaying custom data about WooCommerce products. Understanding the differences between the two options is crucial in knowing which one best fits your specific requirements.

What are custom fields?

Custom fields, also known as post meta, are individual pieces of information that can be added to your products. They are flexible and be used to store a wide range of data, including text, images, and other media.

In short, custom fields add extra fields to the Add/Edit Product screen in WooCommerce. They're ideal for storing standalone data about products. Here are some examples of when you should use WooCommerce custom fields:

  • To store a unique product barcode, inventory, or reference number.
  • For adding extra ways for people to interact with your products. This might be by adding extra buttons (e.g. 'Enquire about this product), icons, or social sharing links.
  • To display multimedia content about the product, such as embedded video or audio tracks.
  • For adding shortcodes provided by other plugins, such as a WooCommerce Add to Quote or Wishlist plugins.
  • To store additional notes about the prices or alternate price options. For example, if you're using a bulk discount WooCommerce plugin and want to list the quantity-based discounts, then you can add this information to a custom field.

The idea of a custom field is that it stores unique information. Since the data stored in the field is unique, you can display it in the WooCommerce front end - e.g. on the product detail page, shop, or category pages. However, you wouldn't expect to use this data to group or filter products. If you want to filter by that type of data, then you need a custom taxonomy instead.

You can create WooCommerce custom fields using any custom fields plugin for WordPress. Once you've created the custom fields, it's easy to show them on your website using the WooCommerce Product Table plugin. Keep reading for full step-by-step instructions on how to do all this. First, I'll quickly tell you about WooCommerce custom taxonomies so that you can be sure you're choosing the most appropriate field type for your data.

What are custom taxonomies?

Like WooCommerce custom fields, taxonomies are a way to store and show extra product data. They are a way of grouping and organizing products into categories or tags. However, the difference is that they are designed to store reusable information which can be used to group and filter products. For example, you can create a dedicated archive page listing all products that share a specific custom taxonomy term. You can also use taxonomies to filter products using the WooCommerce Product Table plugin.

Custom taxonomies are very similar to WooCommerce product categories. In fact, WooCommerce categories are actually set up as a taxonomy under the hood. When you create a custom taxonomy in WooCommerce, it adds tick boxes/checkboxes to the right-hand side of the Add/Edit Product screen - just like categories.

Here are some examples of when you might use WooCommerce custom taxonomies:

  • A WooCommerce bookstore needs to store extra product data such as year of publication, author, and publisher. Since more than one book has the same year, author, or publisher, customers need to be able to sort and filter by this data. You can do this using WooCommerce custom taxonomies.
  • If your products relate to a specific geographical area, then you can use custom taxonomies to group products by area. For example, you could create a custom taxonomy called 'Area' and add a separate taxonomy term for each state or county. Customers can then filter by area, or view lists of products from a specific area only.
  • A WooCommerce clothes store can use custom taxonomies to store extra data such as brand names. Customers can then search and filter to find products with their favourite brands, as this field isn't built into WooCommerce as standard.

In summary

Difference between WooCommerce custom fields and taxonomies
Custom field for 'Condition', custom taxonomy for 'Colours'.

When deciding between custom fields and taxonomies, it's important to consider the type of information you want to store and the way in which you want to organize your products. If you need to add unique or specific information to a product, custom fields may be the better choice. However, if you're looking to categorize and organize your products, taxonomies may be suitable.

Read our tutorial about how to create WooCommerce custom taxonomies.

2a. How to create custom fields in the backend

Ok, now you know when to use custom fields. Next, I'll show you how to create advanced product fields for WooCommerce. It's surprisingly easy!

While many individuals opt to add custom fields programmatically, this tutorial is designed for non-developers. By reading on, you will learn how to add custom fields to your WooCommerce products without writing a single line of code. This makes it possible for you to display extra product fields wherever you desire, including on the product page, the shop page, and category pages.

Which custom field plugin?

In order to add custom fields to your WooCommerce products, you'll need to have a WooCommerce custom fields plugin installed. There are numerous high-quality and free plugins available for creating custom fields in WooCommerce, including Easy Post Types and Fields and Advanced Custom Fields (ACF). Each custom field plugin offers unique features and benefits, so you can choose the one that best fits your needs and preferences.

If you prefer, you can also opt for a dedicated WooCommerce custom fields plugin. These are specifically designed for adding custom fields to products in the WooCommerce platform. However, custom fields are essentially the same whatever WordPress post type you're adding them to. For that reason, there's no need to use a WooCommerce-specific plugin.

I'm going to show you how to create WooCommerce custom fields using Easy Post Types and Fields, and also Advanced Custom Fields. These are my two favorites.

However, the instructions are the same for most other custom field plugins for WordPress. If the custom fields don't show up on your site when you follow the later sections of this tutorial, make sure the plugin isn't adding extra characters to the start of the custom field name. (You might need to contact their plugin support to ask about this.) For example, Toolset automatically adds wpcf- to the start of the custom field name, so you need to know this.

Creating custom fields with Easy Custom Post Types & Fields

Easy Custom Post Types Plugin

Easy Post Types and Fields is a free WooCommerce custom fields plugin. It makes it easy to add custom data fields to your WooCommerce products.

This plugin was designed to make it as quick and easy as possible to add custom fields. It comes with a choice of plain text and visual editor custom field types. Use it if you want a quick and straightforward way to add WooCommerce custom text fields to the product page. 

How to add custom fields to WooCommerce products

  1. Log into the WordPress dashboard and go to Plugins → Add New.
  2. Search for ‘Easy Post Types and Fields’, then install and activate the free plugin.
  3. The setup wizard will open. Skip this and go to Post Types → Manage, then click on the 'Other Post Types' tab.
  4. Find the 'Products' post type (this is added by WooCommerce) and click 'Custom Fields'.
    Add custom fields to WooCommerce product
  5. Click the button to add as many fields as you like to your WooCommerce products. Make a note of the name of each custom field - you'll need this to display it later in this tutorial.
    How to add WooCommerce product custom field
  6. Finally, edit your products. On the 'Edit Product' screen, you'll find the custom fields that you added in step 4. Fill in the data as needed.
    WooCommerce product with custom fields

How to create custom fields with the Advanced Custom Fields plugin

Advanced Custom Fields (ACF) is a popular WordPress custom fields plugin. Use it if you're willing to spend a bit more time on setup and want extra features such as additional field types:

  1. Log into WordPress and find Plugins → Add New. Search for ‘Advanced Custom Fields’, then install and activate this free plugin.
  2. Click ‘Custom Fields’ on the left-hand side of the WordPress dashboard.
  3. Click the ‘Add New’ link by the ‘Field Group’ at the top of the page.
  4. How to create WooCommerce custom fields
    Next, you'll see the ‘Add New Field Group’ page:
    1. First, add a name for the group of custom fields you're creating. (No one else will see this.)
    2. Location – Choose Show this field group if Post Type is equal to Product. This tells Advanced Custom Fields to show the custom field on the Add/Edit WooCommerce product screen.
    3. Press the blue ‘Add Field’ button. Now it's time to create the individual custom fields where you'll store the extra product data.
    4. Add a Label for the custom field. This is how the custom field will be labeled on the Add/Edit Product screen.
    5. Choose a Name for the custom field (this should be 1 word in lowercase). You'll need this to display the WooCommerce custom field on the front end of your website, later.
    6. Choose a Field Type from the available types of a custom field. You can choose text, text area, numbers, checkbox, radio button, etc.
    7. Complete any extra fields for the custom field such as adding a default placeholder value. Finally, click the blue ‘Publish’ button.

That's how to create WooCommerce fields. The next step is to add data to the custom field value for some or all of your products. To do this, go to the 'Edit' page for each product and you'll see the extra WooCommerce custom field(s) lower down the page. They'll be shown somewhere below the Product Data section. Edit the placeholder, enter values into the custom fields, and then save the product.

2b. How to display custom fields on shop pages

How to show custom fields on the shop page

Show WooCommerce custom fields

A shop page product table with a custom field column

In the previous section, I showed you how to store new custom fields for your WooCommerce products in the back end. The next step is to display these fields on the front end of your WordPress website for customers to see. Of course if you're using custom fields simply as a way to store internal notes, then there's no need to display them. However, if you want to show your WooCommerce custom fields on your website, it's a simple process.

There are several ways to make custom fields visible on the front end of your website. This includes displaying custom fields on product pages, the shop page, and category pages.

The easiest way to show your extra product data is to install the WooCommerce Product Table plugin. This takes your products and lists them in a quick order form layout anywhere on your site. You can add product tables to any page you like. This might be normal pages, or your WooCommerce shop and category pages.

You can choose which columns to include in the product table. The great thing is that you can include WooCommerce custom fields in the table. This is more flexible than the default store layout, which just lists basic information such as the product name and price. It's a really easy way to display the extra product data that is stored in custom fields.

See WooCommerce custom fields in action on our custom fields demo page.

How to do it

  1. Get WooCommerce Product Table and install and activate the plugin.
  2. The product table builder will open. Activate your license key and choose the other settings for your first product table. For example, you can choose which products to include in the table. Alternatively, you can select which default shop pages you want to display the table with custom fields on.
    Create page of table builder
  3. In the Columns section, make sure you add your custom field columns. If you're using the Easy Post Types and Fields or Advanced Custom Fields plugins to create custom fields, then these fields will appear in the list of columns. For other custom field plugins, select 'Custom field' and enter the custom field name.
    WooCommerce custom field column product table
  4. Now it's time to add product tables to a page. (You can skip this step if you selected the option to show product tables on your main shop pages.) To list products with custom fields anywhere, either use the shortcode from the final page of the table builder or insert a 'Product Table' Gutenberg block.
    Product Table Gutenberg Block

  5. Next, view the page and see what it looks like! You will see a product table, complete with custom fields. 

Make changes to how your custom fields are displayed

WooCommerce Product Table is a very flexible plugin. Choosing your columns is just one of over 50 options! Look at them all and configure your table to show whatever product data you need.

Have a play, and get your product tables and WooCommerce custom fields showing exactly as you need them.

How to display custom fields on the WooCommerce product page

So far, I've shown you several ways of displaying custom fields on WordPress pages, shop, or product category pages. It's also possible to show a WooCommerce text field on the product page (also known as the product detail page).

The WooCommerce product page is great, as it displays lots of product data such as product title, image gallery, short and long description, product category, product price, attributes and variations. However, there's no built-in way to add custom fields to custom product pages.

You can do this using the WooCommerce Product Table plugin that we looked at in the previous section. It can show custom field values anywhere on your site - including the WooCommerce product page. When used on the single product page, it looks like this:

WooCommerce custom fields taxonomies single product page

A product table displaying custom field data on the WooCommerce product page

Setup tutorial

1. First, create the table of custom fields
  1. Edit each product and add data to the custom fields as required.
  2. Next, install the WooCommerce Product Table plugin.
  3. When you activate it, a table builder will open guiding you through the main settings for your custom tables. You can also launch this later at Products → Product Tables.
  4. On the 'Create a table' page, select the 'Add to a page using a block or shortcode' option.
    Create page of table builder
  5. On the 'Select your products' page, select the 'Individual products' checkbox and search for the product whose custom fields you want to display. (Don't worry if you want to show different custom fields on different products, as I'll show you how to do this in a minute.)
    WooCommerce table builder individual product
  6. Select other options for the table, such as columns. If you're using the Easy Post Types and Fields or Advanced Custom Fields plugins for your custom fields, then these will appear in the list of columns. For other custom field plugins, choose 'Custom field' and add the custom field name.
  7. Copy the shortcode from the final page of the table builder.
  8. Now repeat Steps 3-8 for the other products that you want to display product custom fields on. You can quickly do this by duplicating an existing table and changing which product is selected.
  9. Now go to Products → Product Tables → Settings. I recommend disabling elements such as the search box, product totals and reset button. That's because these are designed for listing large numbers of products in a table, and they're not relevant to displaying custom fields on the WooCommerce product page.
2. Next, add the table to the product page
  1. Open the 'Edit Product' screen for the product where you want to add a table of custom fields.
  2. Add a product table shortcode that you copied earlier to the Short Description field.

This is how it will look on the front end WooCommerce product page:

WooCommerce product page custom fields plugin

What if I don't want to show the custom fields for each product manually?

The instructions above tell you how to manually add a product table with custom fields for specific products. You can do this for as many products as you want to display custom fields.

If you want to show custom fields on all your WooCommerce product pages then you will need to do this globally by adding product tables to the single-product.php template. This is a bit technical and you can ask your developer to do this for you. If you don't have one then I recommend that you post a job on Codeable where one of their WordPress experts will send you a quote.

To get you started, we've provided an article with code snippets on how to automatically add product tables after the short description field on the single product page. The code snippet adds a table of the current product's variations, and you can change the [product_table] shortcode to add custom field columns, disable the variations option, and make any other changes you require.

Can I add custom fields to other sections of the WooCommerce product page?

Above, I showed you how to add custom fields to a table in the short description on the WooCommerce product page. This is a good option because most themes show the short description near the top of the page, under the product name and price.

If you'd rather show custom fields elsewhere on the single product page, that's absolutely fine. Simply add the product table shortcode to wherever you'd like to display the custom field values. For example, you could add it to the long product description instead.

What other extra data can I show on the WooCommerce product page?

Custom fields and taxonomies are just the tip of the iceberg. You can use WooCommerce Product Tables to show any type of product data in a table. This can include:

  • Product image, name, price
  • Short or long description
  • Categories and tags
  • Attributes and variations
  • Star rating from reviews
  • Embedded audio and video

This is a much more flexible way to show WooCommerce extra product data in the short description field. Customers can see all the relevant data from the neat table layout, instead of having to scroll down to the long description tabs.

There's even a neat option to display each product variation on its own row in the table with its own product image. This lets customers select variations and add to cart directly from the table of WooCommerce variations.

Have a play with showing custom fields and other data on the WooCommerce product page. Think about what will best sell your products and maximize conversions. This is a great way to increase sales and make your e-commerce store an even bigger success.

Alternate method: Show a text custom field above the add to cart column

So far, you've learned how to add a table to the single product page, with each custom fields displayed in a column of the table. If that's not the layout you want, then I have an alternative suggestion for you.

We're going to use a plugin called WooCommerce Lead Time. While the plugin is designed to display waiting times, it works by creating a WooCommerce custom field and showing it on the single product page, immediately above the add to cart button. As a result, you can use it to show any type of text-based information and not just lead times.

To set it up, simply install the plugin and add the information that you want to display to the 'lead time' field. The text you have added to the 'lead time' custom field will appear above the add to cart button, under the short description.

The other benefit of using WooCommerce Lead Time for your custom field is that you can choose whether to add the information individually for specific products only; or globally so that it appears on all product pages.

How to list WooCommerce products with a specific custom field value

Finally, I'll show you one more option for showing WooCommerce custom fields in the Product Table plugin.

As well as displaying custom field labels in the table layout, you can create tables containing products with a specific custom field value.

For example, imagine that you wanted to display products with a custom field value of 'June' (saved in a custom field called 'Month'). To do this, you could select 'Custom field' on the 'Select your products' page of the table builder and enter 'month' as the custom field name, and 'June' as the value.

WooCommerce product table builder display specific custom field

How to add custom fields to product programmatically

If you're a developer, then you might be wondering how to add custom fields to a WooCommerce product programmatically. Can you even add custom fields to a WooCommerce product without plugins?

The answer is yes! WooCommerce allows you to programmatically add custom fields to products without installing any additional plugins. However, as you can imagine, the programmatic approach to creating custom fields for WooCommerce products involves programming!

With a programmatic approach, you can add custom information directly to your product metadata. You can also include your custom field(s) as part of the existing WooCommerce product data meta box.

Code sample 1

Your code will depend on the kind of custom fields you're looking to add to your products. Many product types only need a simple custom text field to let users enter some value. For such use cases, this custom text input field snippet by WooCommerce developer Rodolfo Melogli suffices:

code snippet

As you can see, you’ll be using a bunch of core WooCommerce functions and hooks in the code. For example, you're using the WooCommerce hook "woocommerce_before_add_to_cart_button" to show your custom field on your product page. You're also using the woocommerce_add_order_item_meta hook to save your product input fields for Woocommerce into the order meta information. These can vary greatly depending on the custom fields you're trying to add.

When you take such input from your users, you should include it in your cart page summary (with your cart item details), your checkout, and also in your order's email. The snippet we just saw doesn't just let you allow your users to enter a text-based value inside your product page but also takes it over to your cart and checkout. Not just that, it adds the custom input to your order confirmation email too.

Code sample 2

Next, we'll share some example codes kindly published by Plugin Republic. You'll be adding these snippets to your WordPress child theme's functions.php file. You could use the code snippet below to register a custom field, display the input field in the General tab of the WooCommerce product data box, and save it as product metadata:

/**
* Displays the custom text field input field in the WooCommerce product data meta box
*/
function cfwc_create_custom_field() {
$args = array(
'id' => 'custom_text_field_title',
'label' => __( 'Custom Text Field Title', 'cfwc' ),
'class' => 'cfwc-custom-field',
'desc_tip' => true,
'description' => __( 'Enter the title of your custom text field.', 'ctwc' ),
);
woocommerce_wp_text_input( $args );
}
add_action( 'woocommerce_product_options_general_product_data', 'cfwc_create_custom_field' );
/**
* Saves the custom field data to product meta data
*/
function cfwc_save_custom_field( $post_id ) {
$product = wc_get_product( $post_id );
$title = isset( $_POST['custom_text_field_title'] ) ? $_POST['custom_text_field_title'] : '';
$product->update_meta_data( 'custom_text_field_title', sanitize_text_field( $title ) );
$product->save();
}
add_action( 'woocommerce_process_product_meta', 'cfwc_save_custom_field' );

Then, you could use WooCommerce's many hooks to display that field data on the front end of your e-commerce store at the spot where you want it to appear.

For example, this snippet displays the custom field data after the add to cart button on your single product page:

/**
* Displays custom field data after the add to cart button
*/
function cfwc_display_custom_field() {
global $post;
// Check for the custom field value
$product = wc_get_product( $post->ID );
$title = $product->get_meta( 'custom_text_field_title' );
if( $title ) {
echo get_post_meta($post->ID, 'custom_text_field_title', true);
}
}
add_action( 'woocommerce_after_add_to_cart_button', 'cfwc_display_custom_field' );

There are also other hooks that let you display information on the WooCommerce checkout page or the cart page.

Is It worth adding WooCommerce custom text fields programmatically?

While you don't need any plugins to programmatically add custom fields to WooCommerce using this method, you can end up with errors. Your custom code could have compatibility issues with the other WooCommerce extensions or WordPress site plugins that you might be running. You can also experience code validation errors.

As you can tell, using plugins is a much simpler way to add custom fields to product pages. While it is possible to display custom fields without the use of a plugin, it's really only accessible to developers. That's why the methods described above are a better option for most store owners.


2 easy ways to create and display custom fields

And that's it! I've shown you two easy ways to show custom fields on your website:

  1. We've learned how to add custom product input fields for WooCommerce to collect extra information from customers. This uses the WooCommerce Product Options plugin.
  2. We also learned how to use a free plugin to store extra data about our products and display them using the WooCommerce Product Table plugin.

Neither method for adding custom fields to WooCommerce products requires any special technical knowledge.

Follow whichever method in this tutorial interests you the most, and put it into practice on your own website. It's a fantastic non-technical way to store and display extra product data in WooCommerce.

WooCommerce Comparison Table Plugin

If you sell lots of similar products, then how can customers choose between them? A WooCommerce product comparison table is the solution.

Your store might have exactly what a particular customer has come looking for. But, there’s just too much stuff for them to sift through that it’s starting to affect your conversion rate.

There are lots of reasons to add WooCommerce product comparison tables to your store:

  • If you sell lots of products then customers need an easy way to see them alongside one another.
  • Product comparison buttons are especially important if you sell technical products where customers use factual data to make buying decisions. (E.g. TV's or mobile phones).
  • Maybe you sell visual products such as clothing, and customers need to compare images of each product to choose which they like best.

This is where WooCommerce Product Table - the best WooCommerce product comparison table plugin - comes in.

WooCommerce product comparison table plugin

A WooCommerce product comparison table plugin, like the one above, lists products in a way that makes it easy for customers to find what they’re looking for, and to compare similar products. The aim is to present products alongside each other so that customers can make direct comparisons and quickly and easily choose which ones to buy.

What’s wrong with most WooCommerce product comparison table plugins?

The WooCommerce product comparison table plugin market is crowded, and we won’t pretend there aren’t plenty of products available. These often let customers tick 2 or more products and then view them on a separate page. You might also come across static table plugins where you have to manually enter the data.

There are a couple of problems with most comparison table plugins for WooCommerce. Here are the problems they face:

  • Don’t have features to help customers find products to compare in the first place.
  • Show the product comparisons in the same layout as the rest of the store, instead of having a dedicated comparison table.
  • Contain very little product data in the comparison table – usually image, name and price. You can add extra data if you create comparison tables using a static WordPress table plugin, but you have to enter everything manually which is no good.

We can do better 💪

WooCommerce Product Table is a different type of product comparison plugin. It automatically lists products in a searchable, sortable table layout with filters. You can add columns of extra product data to the comparison table, letting customers compare products in a more meaningful way.

You can either use it alone for easy product comparisons, or with YITH WooCommerce Compare to add shortlists and lightboxes to the comparison table.

Read on to discover how to create the perfect WooCommerce product comparison table.

How does the WooCommerce comparison table work?

WooCommerce Product Table is highly flexible and there are many ways to configure your tables. Used correctly, it functions perfectly as a WooCommerce comparison table plugin.

This is how customers can use it to compare products in WooCommerce:

  1. Customers will view a page on your website with products listed in a table The table provides several ways to find the products to compare. They can type a keyword into the search box. The filter dropdowns above the list – and/or filter widgets in the sidebar – make it easy to refine the list. They can sort the table by clicking on any column header. Customers can even filter the table by clicking on a category, tag or custom taxonomy term.
  2. As the customer filters the table, the number of products listed will decrease until they can just see the products they want to compare This works slightly different from some WooCommerce product comparison table plugins, because you are filtering the table instead of ticking boxes. It’s a neat way to do it because this helps customers to find suitable more products more quickly, instead of having to scroll through a long list of products.
  3. You can include as many columns of product data as you like in the table Each product takes up 1 row in the table, and customers can easily view the data for each product and make direct comparisons. For example, if you’re selling smartphones and want to compare the storage capacity, then you can include a ‘Memory’ column in the WooCommerce comparison table.

The product of all of this is customers can find what they’re looking for much more quickly. This feeds in to a higher conversion rate, and in turn more sales, revenue, and profit for you.

How can the WooCommerce product filter plugin enhance product comparisons?

WooCommerce Product Table with Filters

While the WooCommerce comparison table is a great tool for customers to compare products side-by-side, it can still be difficult for them to find the exact products they are looking for. This is where the WooCommerce Product Filters plugin comes in.

By adding more advanced filtering options to the comparison table, such as categories, attributes, and tags, customers can use the facets to examine closely the content they're looking for. This means they can quickly and easily compare products that meet their specific criteria, leading to increased sales and customer satisfaction.

For example, a customer might be comparing laptops and want to narrow down the options by screen size, processor, and price range. With the addition of product filters, they can easily find and compare the laptops that match their requirements, rather than scrolling through a long list of products.

How to create a WooCommerce product comparison table

WooCommerce Product Table only takes a few minutes to set up. You don’t need to do any data entry or custom coding. Assuming you already have a WooCommerce site with products, it works instantly and lists your existing products in a neat comparison table.

Watch the video tutorial, or read the detailed written instructions below.

Step 1: Install the Product Table plugin

First, get WooCommerce Product Table and install the plugin on your WordPress website.

Step 2: Create a WooCommerce comparison table

Open the table builder at Products → Product Tables → Add New. Go through each step to set up your comparison tables.

2a. Choose which products appear in the comparison table

The first page of the table builder asks whether you want to add comparison tables to a normal page, or enable them on your WooCommerce shop templates. For this tutorial, I'll assume that you're creating a separate product comparison page. However, if you prefer then you can enable the comparison table view on all your shop pages instead.

By default, the WooCommerce product comparison table lists all the products in your store. This is ideal for many types of comparison shopping, because customers can view the full list and use the filters to refine it according to their interests.

However, if you sell different types of products, then you might want to provide multiple comparison tables listing different categories. For example, it’s unlikely anyone would want to compare t-shirts and shoes in the same clothing comparison table, so it’s best to list these separately.

Fortunately, WooCommerce Product Table can be used to create tables listing specific products only. You can create comparison tables with products from a certain category, tag, or even products with a specific custom field or taxonomy value.

Select products page of table builder

2b. Add product data to the comparison table

In particular, add plenty of columns of product data. You can choose exactly which columns are included in the product comparison table. The plugin supports all the standard WooCommerce fields that you fill in when you add new products. It also supports extra fields such as product attributes, variations, custom fields, and taxonomies.

This creates an opportunity to create much more useful WooCommerce product comparison tables, which isn’t possible with other plugins. Make the most of it by planning your columns carefully!

To let customers compare products in WooCommerce, I recommend thinking carefully about what data they will want to compare. For example:

  • If people will be comparing the price of your products, allow easy price comparisons by including a price column. And even better, use the price filter sidebar widget.
  • Use columns such as weight and dimensions for items such as furniture, where customers are buying based on size.
  • Adding product attributes allows for direct comparisons of information such as size and colour (or whatever you like!). List each attribute as a column in the comparison table.
  • Use WooCommerce custom fields and taxonomies to store extra data about your products and list this as columns in the table. This can include additional technical data that you’re not storing elsewhere.
WPT table builder columns

2c. Change how products are added to the cart

The default WooCommerce comparison table includes standard “add to cart” buttons. If you prefer, you can replace these with checkboxes so that customers can add multiple products to the cart at once.

Add to cart page of WooCommerce product table builder

If you don’t want customers to purchase directly from the comparison table, then you can remove the add to cart column altogether.

2d. Lazy load option for bigger comparison tables

Sites with many types of products in a WooCommerce comparison table plugin (e.g. 100s or 1,000s of products), can activate lazy load to prevent any performance problems. This loads 1 page of products at a time, so your site will never crash however many products there are to compare.

2e. Add filters for refining the comparison table

WooCommerce Product Table Filters
The table builder lets you add filter dropdowns above the WooCommerce comparison table. For example, you can let customers filter by category, tag or attribute to start comparison similar products.

The comparison table plugin also works with the WooCommerce product filter widgets. If the page with your comparison tables has a widgetized area such as a sidebar, then you can add widgets to refine the list by attribute, price, or rating.

Step 3: Add the WooCommerce comparison table to a page

Lastly, go to the page where you want to add a WooCommerce product comparison table. Either add a 'Product Table' block or copy the shortcode from the last page of the table builder.

Product Table Gutenberg Block

This will list all your products in a user-friendly WooCommerce comparison table.

Add 'Compare' buttons to the product comparison table

So far, we've looked at how to use WooCommerce Product Table on its own to allow customers to compare products. They do this by searching, sorting and filtering the table to compare the products that meet their criteria.

To add to this even further, you might like to add 'Compare' buttons to the WooCommerce comparison table. You can do this by using Product Table with the YITH WooCommerce Compare plugin.

By combining these two plugins, your customers can view some or all of your products in a space-saving table layout. They can click the WooCommerce product comparison buttons for the items they're interested in. This opens up a neat comparison table, with each product in a separate column. Customers can view the products side by side and add their favorites straight to the cart.

I'll tell how you how to use the two plugins together next.

Setup instructions

Before you start, follow the instructions above to create a comparison table with WooCommerce Product Table. Next:

  1. Get YITH WooCommerce Compare and set it up on your WordPress site according to YITH's documentation.
  2. Decide which product field you will use to add the comparison buttons. For example, you might add them to the product short or long description if you're not using these for anything else. Alternatively, you could create a custom field and add them there (e.g. using the Easy Post Types & Fields or Advanced Custom Fields plugin).
  3. Go to the 'Edit Product' screen for each product. Add the shortcode [yith_compare_button type="button"] to the field you chose in step 2. (Tip: If you have too many products to realistically do this, then I'll tell you how to do it dynamically in the next section.)
  4. Next, edit the WooCommerce comparison table that you created earlier by going to Products → Product Tables and clicking 'Edit':
    • Add an extra column for whichever field of product data you used to add the YITH compare buttons. Click the pencil icon and rename it to something relevant like 'Compare'.
    • Ensure that the 'lazy load' box is disabled because lazy load is incompatible with YITH's plugin.
  5. Finally, go to Products → Product Tables → Settings and enable the 'Shortcodes' button. This tells the product comparison buttons to display correctly in the table.

Can I add the shortcode dynamically?

The above instructions are aimed at non-coders and provide an easy way to add a 'Compare' button alongside every product in the table. I have assumed that you have manually added the YITH compare buttons to a field on the 'Edit Product' screen, such as the short description.

If you want an easy way to automatically add the compare button for each product, then I recommend adding the [yith_compare_button type="button"] shortcode as a default value for the custom field that you are displaying in the table. Most custom field plugins, such as Advanced Custom Fields, allow you to add a default value for each product. (Note: If you've added your products before setting up the custom field and default content then you need to edit each product and click 'Update' before the default content will be stored for that product).

Alternatively, if you have developer-level skills, then you can write some custom code to do it for you. If you don't have a developer, then I recommend that you post a job on Codeable. Their pre-approved WordPress experts will send you a quote. Codeable is a fantastic place to find good WordPress developers who specialize in customizing plugins.

Here are some tips to get started with adding the product comparison buttons dynamically:

  • Use the following code or similar to insert the 'Compare' buttons into one of the fields in the product table:
<?php echo do_shortcode('[yith_compare_button product="' . $product_id .' type="button"]' ); ?>

Case study - WooCommerce comparison table of electrical products with extra technical data

WooCommerce product comparison table plugin example

Universal Fans sell a wide range of fans to retail and the trade. They have used the WooCommerce Product Table plugin to create a WooCommerce comparison table for their exhaust fans. This helps customers to find the right fan for their needs, based on a range of technical data.

The comparison table page consists of 4 tabs, each containing a product table listing a specific type of fan. The comparison table includes columns for SKU, image, name, price, plus several product attributes containing technical data. Each column in the table is sortable. Customers can also filter by duct size or perform a keyword search.

To allow more space for the product comparison data, Universal Fans have decided not to include buy buttons in the table. Instead, customers can click on any fan to access the single product page where they can choose options and buy.

Universal Fans said:

I am very happy with the plugin, for us it works really well. We sell relatively technical products, so it is really helpful for customers to be able to view products in certain categories and view them in a list format, which can be sorted by custom attributes.

As you can see, WooCommerce Product Table is the perfect product comparison table plugin for a site like Universal Fans. Next, I'll show you how to create comparison tables for your own WooCommerce store.

Tips on supercharging your WooCommerce comparison tables

Create affiliate product comparison tables in WooCommerce

Lots of WooCommerce websites make money by providing helpful comparisons of products sold by third party websites. Each product has an affiliate link. This earns the website owner a referral commission if the customer clicks through and buys the product from the other website.

You can easily create affiliate product comparison tables without adding any further plugins. WooCommerce has a built-in product type called External/Affiliate Products. You add products in WooCommerce as usual, but select this product type and add your referral link to the affiliate product.

WooCommerce Product Table fully supports External/Affiliate Products. Your affiliate links will appear in the WooCommerce product comparison table instead of add to cart buttons.

You may also like: Earn Affiliate Commission with a WooCommerce Product Reviews Website

Use icons to allow more visual product comparisons

You can make your WooCommerce product comparison tables more eye-catching by adding icons or content added by other shortcodes. For example, you could use icons to represent the different features of your products, instead of listing features using text.

This lets customers compare products more visually, as they can instantly see which features are available in each product.

Tip: To get this working, you might need to enable the 'Shortcodes' option at Products → Product Tables → Settings. This tells the comparison table to render any code correctly in the table, instead of just showing the code.

Compare product variations in WooCommerce

So far, I've talked about how to create a WooCommerce comparison table to compare actual products. If you prefer, you can use the instructions from this tutorial to compare product variations instead.

To do this, you need to use the option to list each variation as a separate row in the table. Do this on the 'Add to cart' page of the table builder (step 2c, above). Your customers can use the filters to refine the list of variations in the table, and then compare the ones they're interested in.

Prices for multiple products listed in a table

Get the WooCommerce product comparison table plugin

WooCommerce Product Table is the perfect plugin for comparing products. Either use it alone or with YITH WooCommerce Compare.

By listing your product data in a structured table or grid view, customers can make direct comparisons and decide which product to buy. Customers are able to filter products so they only see items directly related to their purchase intent, and the ability to include stock status and add-to-cart options directly in the comparison table itself will directly impact your conversion rate.

This post has covered the exact steps you need to take to increase your sales with a WooCommerce product comparison table plugin. All you need to do now is put this into practice, and watch the sales come in.

The easier it is for customers to view and compare your products, the more likely they are to make a purchase – and ultimately to make your store a success. Do share in the comments how you end up having this set up on your site :)

WooCommerce Build Your Own Product Plugin

While WooCommerce is widely used for simple stores, it’s also possible to create custom product boxes in WooCommerce. Keep reading to learn how to set up a ‘Build Your Own Product’ system.

Whether you want to sell bespoke vegetable boxes, luxury food, or gift baskets, build your own pizza or burrito, build a box, or something else, you can sell custom product boxes with WooCommerce.

Used creatively, WooCommerce is perfect for selling custom product boxes and bespoke orders. Customers can choose from a selection of products in different categories to order a custom combination that is unique to them. They can view the available box contents in a user-friendly list, tick the ones they want, and add to the cart – all from a simple one-page order form.

Pretty neat, right? Below you’ll see an animation showing a WooCommerce custom product box plugin in action:

Build your own hamper WordPress plugin

Best of all, it’s surprisingly easy to create a WooCommerce build your own product system using the flexible Product Table plugin to list the available box contents. You won’t even need to write any code :)

This tutorial will cover everything you need to know to get started on your own WooCommerce custom product box site. We’ll show you how to install and set up WordPress and the required plugins and different strategies for organizing and listing the available box contents. We'll also share some handy design tips to tailor your 'Build your own product' ordering system to suit any kind of business.

Examples of custom product boxes in WooCommerce

First, let’s look at the types of WooCommerce build your own product that you can sell with WooCommerce. This will help you to understand the options and think about what you need for your own custom product boxes.

1. Build your own pizza, sandwich, wrap, burrito, or salad

A WooCommerce takeaway restaurant website might want to let customers choose fillings and build their own meals. This could be used to create a customized pizza, sandwich, sub, wrap, burrito, salad, or other custom product box.

Online food ordering system

For example, the item choices might work as follows:

  • Build your own pizza – choose your base, choose your sauce, choose your toppings, and choose your dips.
  • Create your own sandwich – choose your bread, choose your fillings, choose your salads, and choose your sauces.
  • Build a burrito website – choose your fillings, choose extras, and sides.

The WooCommerce build your own product website would have separate lists of the different types of items – one for each category. For example, the pizza example would start with a list of bases, followed by a list of sauce choices, and so on. Customers could add as many extras as they like to their custom product selection, all from one page.

2. Create your own custom gift basket product

There’s something depressing about buying a basket/hamper as a gift when you don’t get to choose what’s in it! Whether you’re buying a food, beauty, or gift basket, it’s far better to build your own gift basket with items that you know your loved one will enjoy.

You can use WooCommerce to develop a custom product box website selling gift baskets. This might involve creating 3 separate categories: one for the hamper or product box options; one listing all the foods/gifts/cosmetics/etc to fill the gift basket; and one with the padding and wrapping options. Customers can choose their options and add all the individual elements to the cart, creating their own custom gift baskets.

3. Custom meat or vegetable boxes with WooCommerce

The meat and vegetable box industry is growing rapidly as more and more people discover the benefits of local and organic food.

There are 2 main types of meat box or vegetable box websites:

  1. Some companies use WooCommerce to sell the same weekly meat or veg box to all their customers.This contains whatever produce is currently in season, and customers can’t choose the contents. You may sell a choice of meat or vegetable boxes (e.g. Small and Large boxes), but there are no customization options for individual customers. The best way to set this up is to add each box as a separate WooCommerce product (e.g. meat box, fruit box, and vegetable box), with or without variations (e.g. size options). Display the products and/or variations in a table using WooCommerce Product Table. Use YITH WooCommerce Subscriptions to get recurring revenue, as customers can sign up to receive the same box weekly, fortnightly, or monthly (or at whatever regular intervals you choose).
  2. The other type of vegetable box scheme allows customers can selecting the items to include in the box.Instead of ordering a box with pre-defined contents, customers can view a list of available items and create a custom product box in WooCommerce. The custom food box company will then fill each box individually, and deliver it to them. Continue reading this tutorial to learn how to set this up.

Before you start, make sure you’re clear on specifically what type of product box you’re building.

You may also want to check out another tutorial of ours: Use WooCommerce to create a restaurant online food ordering system.

How will customers build their own WooCommerce product?

Build Your Own Product Website WooCommerce

If you follow this tutorial to set up your own WooCommerce custom product box system, it will work like this:

  1. The customer will be taken to a single page listing all the box items that are available to choose from, divided neatly into sections/categories.(Or if you prefer, you can divide the process among several pages.) Each section can have basic instructions above the list of products, for example: “Please choose 1 item from each section.”
  2. Customers can select all the items they require.Standalone items will appear on their own row in the list. Mutually exclusive items will appear as dropdown lists so that customers can choose between them. If you use an additional Product Add-Ons plugin (more info about this below), then you can also add further options such as checkboxes and custom gift messages.
  3. Once they have filled their custom product box, the customer can click the ‘Add Selected to Cart’ button.This will add all the products to the WooCommerce cart with the selected options.
  4. Next, the customer can click through to view their selected products in the cart, view the total price, and make any changes.They can then access the checkout, enter their details and order the 'Build your own product' online.
  5. As the store owner, you will receive email notification of each new order. You can then build the product box containing the items they have selected, and deliver it to them as appropriate.

See it in action on our ‘Build a gift basket’ plugin demo page.

What will my build-your-own WooCommerce site cost?

The great thing about selling WooCommerce custom product boxes is that you’ll be using the self-hosted version of WordPress. You will own your own data, and won’t have to pay high monthly charges for a hosted e-commerce platform. It also gives you more control over what your website will cost.

Here’s a list of the various elements of your WordPress WooCommerce website and what they might cost:

Your WooCommerce build your own product website

  • WordPress CMS (content management system) – this powers your overall website and is 100% free of charge.
  • WordPress theme – free (if you choose, you can purchase a premium WooCommerce theme for approx $65. However, the Storefront theme featured in this tutorial is free).
  • WooCommerce plugin – this adds the core e-commerce functionality to WordPress and is also free.
  • WooCommerce Product Table plugin – this paid-for plugin lists your products in a table layout so that customers can choose and customize the options to build their boxes.
  • Bonus: WooCommerce Product Options plugin – you only need this if the product variation options that come built into the free WooCommerce plugin aren’t suitable. The core WooCommerce platform lets customers select customization options from 1 or more dropdown lists. If you want further options, such as multi-select checkboxes or custom gift messages, then you’ll need the Product Options plugin too.
  • Any further plugins you choose to add extra functionality, such as ongoing subscription boxes.

Other costs

  • Web hosting(Ongoing cost) – There are many web hosts for various price ranges. If you’re outside of Europe, we recommend signing up direct with Kinsta or or WP Engine. It’s important to choose a managed WordPress host because they will ensure your website loads quickly, is reliable and you won’t lose sales due to downtime etc. They also come with extra features such as backups with one-click restores, and free staging sites. Scrimping on hosting is a false economy.
  • Payment gateway feesIf your customers will be paying for their WooCommerce build your own products online, then you will need a payment gateway. This will take a percentage of each sale in fees. PayPal is the easiest payment option to set up and charges are just a few percent. If you will be receiving a lot of online orders then I’d recommend a credit card processor with even lower fees such as Stripe.

Total up the options you’ll need to give you an idea of the cost involved. It’s amazing just how inexpensive it is to set up a website for your business creating your own products.

With those costs clear, we’re nearly ready to cover how to actually create a custom product box website with WooCommerce. But first, let's have a quick look at 2 websites that are already using WooCommerce and product tables to sell 'Build your own' products.

Case study #1 - using WooCommerce to sell custom cosmetics product boxes

WooCommerce build your own experience box cosmetics

Inspire Cosmetics uses the WooCommerce Product Table plugin to sell custom product boxes of cosmetics. They've built a multi-step page where customers are taken through an intuitive journey to build their own product box. First, you choose an experience box. Second, you choose the experience box contents from 2 tables listing the cosmetics products. Third, you complete your order via the WooCommerce cart and checkout.

They used the Beaver Builder WordPress page builder plugin to create the tabbed layout. To boost performance, each tab links to a separate page but the customer has the illusion of remaining on one page for the entire process.

They also use the WooCommerce Quantity Manager plugin to ensure that people select the correct quantity of items for their experience box. This allows them to sell different-sized boxes with the correct validation rules.

Case study #2 - using WooCommerce to sell custom product baskets for pets

Build your own product example

Barks and Squeaks uses WooCommerce Product Table to sell create your own product gift baskets for pets and their owners. Customers can quickly choose variations and create a custom product box containing multiple WooCommerce products. You can use the "Who Is It For?" filter above the table to narrow down the list. This speeds up the buying process.

Now you've seen the WooCommerce design your own product system in action on 2 real websites, I'll show you how to set it up yourself!

How to create a WooCommerce custom product box website

Building a 'Build your own product' system from scratch can be a daunting proposition, but WordPress and the right plugins make it really easy.

This section will show you everything you need to know: you’ll learn how to set up WordPress and an appropriate theme, along with the plugins you need. Then, I’ll show you how to use those WooCommerce plugins to set up your product categories and tables, and then create your own product page listing the box contents.

Step 1 – Set up WordPress

First, sign up with a good WordPress web host such as Kinsta or WP Engine and follow their instructions to install WordPress.

Once you’ve logged into the WordPress admin for the first time, go to Appearance → Themes and install a theme. Themes are the “templates” on which all WordPress sites are built, and there are hundreds of thousands to choose from, so you can make your site look just how you want.

You can either buy a premium theme and install it, or use a good quality free theme such as Storefront. All the product images in this tutorial and the accompanying video use the Storefront theme.

If you don’t like the design of Storefront, check out its many child themes which offer a good choice of themes for your WordPress website design. There’s even a child theme designed specifically for food websites!

Step 2 – Install WooCommerce

When you first activate WooCommerce, you’ll be taken to a Setup Wizard. This will walk you through the main steps to creating your online store. For example, it will auto-create your main pages such as the shop page, cart, and checkout. You can choose your tax and shipping settings and set up payment gateways. You can then use the official WooCommerce documentation to make any further changes to the overall setup of your online shop.

Step 3 – Create ‘build your own product’ categories

Once you’ve set up WooCommerce, it’s time to create the categories that the custom product box ordering system will be divided into. First, write them down on a piece of paper to make sure it’s logical and user-friendly.

WooCommerce Build Your Own Product Categories

Think about the best way to group product elements. For example, if you’re creating a ‘build a gift basket’ website then you might want 3 categories: one for the box/basket, one for the contents, and one for finishing touches such as padding and bows.

Remember, you’re creating a tailored user experience: you need to take the customer on a journey to create the custom product box, making one decision at a time.

Once you’ve planned a category structure, go to Products → Categories in the WordPress admin. Create as many categories as you need.

Step 4 – Plan your products

Now, it’s time to create some products. Each of the items that customers can choose as part of the "build your own" process will be a ‘product’ in WooCommerce. Again, it’s best to plan your products before adding them to the website:

  1. First, write a list of all the separate items that customers will be able add to their box when building the custom product.Structure the list into the categories you created a minute ago. For example, if you’re building a ‘design a custom pizza’ website then your list should include things like bases (deep pan base, Italian base), sauces (tomato sauce, spicy garlic sauce), toppings (pepperoni, ham, meatballs, mozzarella, goat’s cheese), and so on.
  2. Next, decide whether to create each item on the list as an individual product, or to group them into variations.I’d recommend using individual products for standalone items, and variable products for items that the customer has to choose between. For example:
    • In the pizza example, the customer only needs a single pizza base, so you would add a single variable product called ‘Pizza Base’. You might then add 2 variation options to this product: ‘deep pan’ and ‘Italian’. Later, I’ll show you how to display these on an order form with a dropdown so that customers can select a base from the 2 options. (NB: with variable products, it will still sometimes be possible for customers to choose more than 1 option if they want to. However, using this format will discourage them from doing so).
    • For other types of items, such as pizza toppings, the customer can choose as many as they like. It’s not an ‘either/or’ choice and the toppings aren’t dependent on each other. You should add each of these items as individual products, not as variations.
WooCommerce Build Your Own Products List

Tip - Use Add-Ons for extra product options

If variations aren’t flexible enough then you can add extra product options using the WooCommerce Product Options plugin instead. This has extra options such as check boxes, radio buttons, the ability for customers to add some custom text, etc.

Step 5 – Add the products

Once you’ve worked out all the products that you’ll need to create, and decided on the format, it’s time to add them to WooCommerce. Follow this process for each product:

  1. Go to Products → Add New in the WordPress admin.
  2. Add all the product data such as title, description, category, and upload a featured image.
  3. In the ‘Product Data’ section, choose a product type:
    1. Select ‘Simple Product’ if you’re creating a standalone item that can be added to the eventual WooCommerce build your own product without variations. Add a price, plus choose the stock options if you want to use stock control.
    2. Select ‘Variable Product’ if you’re creating several mutually exclusive items for customers to choose from (like my pizza base example in the previous section). This is slightly trickier to set up – please follow the instructions on creating attributes in the WooCommerce documentation. Once you’ve created your attributes, tick the ‘Use for Variations’ box and go to the ‘Variations’ tab. You can then select your attributes and create the variations (one for each options) with their own pricing and stock control.
    3. If you’re using WooCommerce Product Options to provide extra options, then you can use these with the Simple or Variable product type. Add your options under Products → Options.
    4. Finally, click Publish to add the product to the custom product box website.

Now comes the fun part!

Build Your Own Product Website with Variations

Step 6 – Create a ‘build your own product’ page

It’s time to list everything on a single page or order form, so that customers can select items and build their own custom product box. You’ll need the WooCommerce Table plugin for this:

  1. Buy WooCommerce Product Table and install it.
  2. Create your first tableThe product table builder will open automatically. Go through each page to choose details such as which products to display, and which columns to include. Copy the shortcode from the final page of the table builder - you'll need this for Step 6.
  3. Create more tablesGo to Products → Product Tables and create a different table for each section of the 'Build your own product' system. For example, you might create a different one to list the products from each category.
  4. Create a page (Pages → Add New) which you will use for the custom product box online order form. Add whatever information you like to this page, for example instructions and any rules/restrictions that customers should follow in selecting their products. (E.g. you might add instructions like “Choose 1 product from each category”.)
  5. Divide the page into sub-headings – 1 for each category. For example, a ‘build a custom pizza’ website might need H2 subheadings for Base, Sauce, Cheeses and Toppings.
  6. Insert tables onto the pageNow insert the product tables that you created in Steps 2 and 3 into the relevant parts of the page. To do this, either use the 'Product Table' Gutenberg block or the shortcode that you copied earlier.

The end result will be a page listing each section of your 'Build your own product' order form, like this:

WooCommerce Product Configurator Plugin

Split the 'build a box' process across multiple pages

In the previous section, you learned how to add multiple product tables to a single page. Alternatively, you can split the 'build your own custom product' ordering process across several pages.

Depending on what you're selling, this can have several benefits:

  • If you have a small selection of products then it makes sense to keep everything on one page. In contrast, if you have a lot of products or options then it's good to use multiple pages.
  • It can also be better for performance, as fewer products are being loaded all at once (although WooCommerce Product Table does come with a lazy load option, which helps with page load times).

How to set it up

To create a multi-step 'Build your own product' process, it's important to make things as easy as possible for the customer. The process must be simple and intuitive. For example:

  • You might add a 'Next Step' button under each product table, intuitively directing users to the next page after they add products to the cart.
  • For an even more seamless user experience, install the free WooCommerce Add to Cart Custom Redirect plugin. List your basket/box products on the first page of the order process, and use this plugin to redirect each one to the page where you've listed the box contents products. Users will automatically be redirected to the correct next page, depending on which box they choose. This is an excellent option if you offer different content products for each box. (Tip: To use this plugin with WooCommerce Product Table, you must ensure that the Ajax cart option is disabled. The redirection only works if the page refreshes after adding a box to the cart.)

Bonus options

By now, you know how to create a WooCommerce store where customers can select multiple items to create a build your own custom product box. Before we finish, I’ll tell you about some plugins that can further enhance it.

WooCommerce Quick View Plugin Build Your Own Product

So far, you've learned how to list the components of your 'build your own' WooCommerce products on a single page, with an add to cart column listing all the options. That's fine if you have a small number of options for each product. But what if you're creating more complex custom product box systems systems, with many variations or product add-ons? You can see from the screenshots above that the product list will start to look cluttered if you have too many options.

If this applies to the build your own products in your ecommerce store, then WooCommerce quick view is the solution:

WooCommerce customizable product quick view
WooCommerce Product Table Quick View Magnifying Glass
The WooCommerce Product Table plugin featured in this tutorial is designed to work with our other plugin, WooCommerce Quick View Pro. Use the two plugins together to add a Quick View column to your product tables. Customers can use this to view more images, extra information, choose variations and add to the cart from a lightbox popup.

Quick view is a great way to tidy up your custom product box ordering pages without having to take customers to a separate page for each product. This keeps them within the flow of building their own product and avoids distractions. (Tip: If you install WooCommerce Quick View Pro then I recommend using WooCommerce Product Table to disable the links to individual product pages.)

Set quantity rules and defaults

WooCommerce gift basket plugin

Out of the box, all your WooCommerce products will have a default quantity of 1. Customers can add as many of each item to their custom boxes as they like.

Many 'build a box' schemes need more control over product quantities. Specifically, they need to ensure that customers add the right number of items from each category to their boxes. You can easily do this with the WooCommerce Quantity Manager plugin.

How it works

Let's say that you have created 3 sections for your WooCommerce built-your-own-product system: Box, Contents, and Finishing Touches. You can add minimum and maximum controls like this:

  • Box - Set the minimum and maximum quantity for this product to 1.
  • Box contents - If you want customers to choose up to $30 worth of items, then set the maximum category value to $30. Alternatively, set a minimum and maximum quantity so that customers have to choose a certain number of box items instead.
  • Finishing Touches - To let customer choose up to 2 decorative options for their custom product box, set the maximum category quantity to 2.

Where possible, the WooCommerce Quantity Manager plugin will stop customers from adding the wrong quantity in the first place. For example, the quantity field for the 'Box' product won't let customers select more than 1.

If the customer tries to add too many products from the box contents category, then they will see an error. The error will be helpfully worded and will advise them what they need to change.

If the WooCommerce cart doesn't contain enough products from a certain category then again, a helpful error will ask them to add more.

To improve user experience, I recommend adding clear messages about the quantity requirements to the build-your-own-product page. You can see an example of this in the screenshot above.

Sell different products for each box or basket

So far, we've assumed that you will be offering the same box contents products to everyone, regardless of which box they select.

If you'd rather sell different products depending on the custom product box, then you can do this too.

Simply create a separate category for each gift basket and use WooCommerce Product Table to create a table listing all the products for each box. Put the box itself in the same category, and use the sort options in WooCommerce Product Table to list the box first. Use the free Product Dependencies plugin to prevent people from buying the contents products unless they have also added the correct box to their cart.

Can I add a fixed price for each box option, instead of charging separately for the contents?

Some people use WooCommerce Product Table to create a custom product box website with a fixed price for each box. For example, they might offer Box A for £10 and Box B for £20. Each box contains a different number of products.

Again, you can achieve this by using WooCommerce Product Table with the WooCommerce Discount Manager plugin.

How to sell fixed price product boxes in WooCommerce

  1. Install WooCommerce Discount ManagerFirst, install the WooCommerce Discount Manager plugin on your WordPress website.
  2. Create a fixed price dealNext, go to Marketing → Discounts and click 'Create New'. Select the 'Buy X products for a fixed price' discount type.
  3. Choose the discount detailsSelect which products customers can combine to get the fixed price offer, for example your 'box contents' category. Also select the number of items that they must add in order to be charged the fixed price.
    WooCommerce Discount Manager Buy X products for Y fixed price

After you have saved the fixed price discount, customers can

Repeat the above steps to create as many fixed price deals as you like. For example, you might create one fixed price to sell quantities of 5, another for quantities of 10, and so on.

If there are any quantities that you don't want customers to be able to buy (for example, quantities of less than 5) then you can use the WooCommerce Quantity Manager plugin to prevent this.

Can I sell box subscriptions, and let customers change their order each week/month?

This is possible, with a bit of extra work.

1. Create your subscription and box contents products

  1. First, install YITH WooCommerce Subscriptions and create a subscription product for each box.Create a separate category for these products. Use WooCommerce Product Table to list products from this category on a public page. Customers can view the subscriptions, sign up and pay online. (Note: The subscription product is just for the ongoing subscription/membership plan - do NOT include options for choosing the box contents as part of the subscription product. You'll create separate products for the box contents next.)
  2. Next, create categories for the box contents products.Add each option for the box contents as a separate product, or as variable products with a choice of options. Decide whether or not to charge for these products:
    • If all products are included within the ongoing subscription plan, then leave the price of the box contents products as 0. This is because the customer has already paid via their subscription and the products are essentially free.
    • If customers have to pay for each item in addition to the subscription cost, then add prices for each product.
    • Alternatively, if you include some products within the basic subscription and charge extra for more expensive items, then you can do that too. If the customer selects chargeable items then they will make a one-off payment for these at the checkout, otherwise they can choose their box contents and check out for free.
  3. Create a new product page for choosing the box contents. Use WooCommerce Product Table to list the products from these categories.
  4. Finally, use the AutomateWoo plugin to automatically email your customers at regular intervals, reminding them to order the box contents for that subscription period.The emails should contain instructions on how to log into their account and order their box contents for that week/month.

2. Restrict access to the box contents products

  • Restrict what subscribers can order, and how often If you want to control how many items customers can order for their box, then you can add the WooCommerce Quantity Manager plugin.
  • Prevent non-subscribers from ordering box contents products To prevent non-subscribers from ordering the monthly/quarterly box, you need to restrict the page where you've listed these products. Do this using the WooCommerce Protected Categories plugin. Use it to restrict them to logged in customers.

Can customers change their box each week?

Some WooCommerce subscription box websites like to sell subscriptions for a fixed weekly/monthly cost, while giving customers the option to choose the box contents each week. Unfortunately there is no straightforward way for the customer to change their box each time. The way WooCommerce Subscriptions works is that they subscribe to receive the same products each time.

My suggestion

Lots of people have asked us how to do this, so here's a suggestion:

  • Use YITH WooCommerce Subscriptions to sell the subscriptions without any actual products (i.e. box contents) associated. For example, you might have a product called 'Weekly Box - 10 Items'. This would bill the customer a fixed amount each week.
  • In a private area on your site (which you could create using our WooCommerce Protected Categories plugin), you could add the products that are available each week. Create a separate category for each subscription option. You would then use the WooCommerce Quantity Manager  plugin to restrict the number/value of items that the customer can order from that category. Set the price for each product to 0.00 so that customers can order the products each week without paying extra. Or if a product has a surcharge on top of their fixed subscription amount, then you can set this as the product price and they must pay this when they check out that week.
  • Use the AutomateWoo extension to automatically email the customer each week with a separate email for each type of subscription. The email should include details of how to access the hidden area where they can choose their products for the week, and the deadline for ordering. Each week, the customer will log into their account, view the hidden category containing the products that are available on their subscription, select them from the product table, and check out in the usual way.
  • As with all subscription box services, if the customer doesn't order specific products before the weekly deadline then you would choose the items for them.

That's a lot of plugins!

I realise that this method involves combining several plugins. They are all reputable plugins which we have tested to work well together. If you don't wish to code it from scratch yourself (which would be very complex - and therefore expensive) then we believe this is the best method for allowing customers to choose different contents for their subscription boxes each week.

Can people build their own custom product box without having to pay online?

Yes, you can do this. When you set up WooCommerce, you need to choose one of the offline payment options. For example, you can enable payment by check or invoice. You can reword these to anything you like, so your customers won't see the word 'check'.

They can then place the order in WooCommerce without having to pay. You will receive an email notifying you of the order. This will contain details of the selected products and the customer's contact details. You can then arrange payment offline in whichever way works for you.

Get building! How do you use WooCommerce custom product boxes?

And there you have it! You now know everything about creating a WooCommerce build your own product boxes page. Plus, you know doing this can be quick and easy using WooCommerce and the WooCommerce Product Table plugin.

  • WooCommerce Product Table makes it easy to create custom ordering pages for your build-your-own-product systems.
  • Use it with WooCommerce Quantity Manager to control how many items customers can add to their product box.
  • Add WooCommerce Discount Manager to sell fixed price product boxes.
  • All of these plugins come with a 30-day money back guarantee, so you can try them on your WordPress site risk-free!

Designing your own site doesn’t have to be hard, no matter what sector you work in. With this simple tutorial, and some help from the most powerful e-commerce platforms on the web, you’ll be able to set up a beautiful, easy-to-use site.

I’d love to hear how you’ve achieved a build your own box system using WooCommerce. Did you use the plugins I’ve mentioned in this tutorial, or are there any good ones I’ve missed? Please add your comments below, and include a link to your site where we can see it working 😀


Easy Digital Downloads Table PluginEasy Digital Downloads Table Plugin is one of the top WordPress e-commerce plugins. Designed specifically for selling digital products, it's perfect for selling downloadable documents, ebooks, audiobooks, and music. The free Easy Digital Downloads plugin has a grid-based layout for displaying downloadable products.

Today, I'll introduce you to our Easy Digital Downloads Table plugin - Posts Table Pro. It provides a flexible shortcode to list Easy Digital Downloads products in a searchable, filterable table layout.

Easy Digital Downloads Product Table Plugin

Buy Plugin

Keep reading to learn how an EDD table plugin can help you to sell more digital products in WP. I'll provide step-by-step setup instructions, with everything you need to create an Easy Digital Downloads product grid. Plus, I'll introduce you to some premium add-ons and functionality that can take your EDD product tables to the next level. There's even a video where you can follow exactly what I'm doing. Let's get started!

Why do I need an Easy Digital Downloads table plugin?

Easy Digital Downloads table and grid layout plugins

The Easy Digital Downloads grid layout includes information such as a large product image, product name, star rating, short description, and link to the single download page. It's fine for many types of Easy Digital Downloads stores, whereas others can make more sales by adding an Easy Digital Downloads table plugin.

Some WordPress websites are better off with the standard Easy Digital Downloads product grid layout, while others benefit from an EDD table view. Think about the best way to list the type of digital products that you sell.

Benefits of an EDD table layout

  • Ideal for WooCommerce stores with lots of downloadsThe search box, column sorting, and filters make it easier for customers to find the downloadable products they want.
    • Create a one-page Easy Digital Downloads order form

    The default Easy Download Downloads product grid layout doesn't include the 'Add to Cart' buttons. Instead, customers must click through to the single download page before they can buy. You can speed up the buying process - and increase your sales - by creating a one-page order form. Customers can add as many downloads as they like to the shopping cart from the product table page, and complete their purchase using popular payment gateways like PayPal and Stripe, with the option for recurring payments for subscriptions and other premium add-ons.

  • Supports embedded audio and video Customers are more likely to buy your downloads if they can view audio and video sample tracks. You can add embedded audio and video players directly in the Easy Digital Downloads product table.
  • Add extra product data about your downloads The great thing about the Posts Table Pro table plugin is that it supports extra data such as Easy Digital Downloads custom fields and taxonomies. This lets you display extra product data in the Easy Digital Downloads table view. For example, you might create a custom taxonomy for 'Artist' and list it as a column in the table and/or as a filter dropdown. You could also store information in Easy Digital Downloads custom fields, such as an ebook's ISBN number or barcode. Again, this can be displayed as a column in the EDD table layout.

And there's more!

  • More digital products per page A table-based Easy Digital Downloads product list can include far more products per page. This makes it easier for customers to make buying decisions at a glance. They don't have to scroll through multiple pages of products. The standard layout includes big images, with no option to change the image size. The EDD table view can show or hide the physical products image, and you can also choose the image size.
  • Support for variable product prices As well as Add to Cart/Buy buttons, the Easy Digital Downloads product table automatically supports price variations in EDD. Customers can select a price option before adding to the cart.

What types of stores need an EDD table view?

Next, we'll look at some use cases. These will help you decide whether an Easy Digital Downloads table plugin is the best way to list your own products.

Digital music catalog

WordPress Audio Plugin
An Easy Digital Downloads shop with hundreds or thousands of products can benefit from an EDD table plugin. Instead of listing the products from each category in a long grid layout, an EDD table makes it easier and quicker for customers to find music they like.

For example, they can type a keyword in the search box or click on any column header to sort and find an artist they like. They can use the filter dropdowns above the Easy Digital Downloads table to refine the list and view the specific music products they're interested in.

You can embed actual music players directly in the Easy Digital Downloads table view. Just add the WordPress audio shortcode to any field in the table and it will appear as an embedded audio player. Customers can listen to a sample music track or playlist to check if they like it before buying. This is a fantastic way to increase your music sales.

Easy Digital Downloads product comparison tables

An EDD table view lets customers compare products side-by-side and make easy buying decisions. Customers can use the search box and filter dropdowns to instantly filter out the downloadable products they don't want. They're just left with the products they're interested in.

The extra data in the Easy Digital Downloads table columns makes it easy to compare products. For example, the EDD product comparison table might include columns for price or extra product data such as genre. Customers can filter the EDD table to find products that meet their criteria. They can then buy directly from the table, without having to visit the single product page.

Now you know why you need an Easy Digital Downloads product grid. Next, I'll give you a real-life case study so that you see it in action on a genuine ecommerce platform. After that, I'll show you how to set it up on your own ecommerce store.

Case study - An Easy Digital Downloads table plugin for Fascinated Sound

Easy Digital Downloads Audio Store Plugin

Fascinated Sound sell sound effects and music via their EDD website. They use Posts Table Pro to list 600+ downloadable audio products in an Easy Digital Downloads table view.

You can learn more about how they did it in our separate tutorial about WordPress audio plugins. Alternatively, read on to learn how to list Easy Digital Downloads products in a table on your own online store.

How to create an Easy Digital Downloads product table

  1. First, get the Posts Table Pro plugin. It lets you create all sorts of tables in WordPress, but we'll be using it as our EDD product table plugin.
  2. Use the instructions in the confirmation email to install and activate the plugin.
  3. After activation, the Posts Table Pro setup wizard will automatically open. It will guide you through entering your software licensing key and creating your first table.
  4. Follow the table wizard and customize the table that works best for your EDD store. Some tips:
    • Choose 'downloads' on the content type page. This tells Posts Table Pro to list Easy Digital Downloads products in the table.
    • DO NOT enable the lazy load option if you want to have the Buy buttons in the table, as these only work when the lazy load is inactive.
  5. Once you've completed creating your table with the Post Table Pro plugin, the setup wizard will confirm that you're finished and provide instructions for inserting the table onto your WordPress site. You can choose to use the "Post Table" block in the Gutenberg editor or copy the EDD advanced shortcodes from the table builder and paste it anywhere on your site, giving you the flexibility to place the table on any page regardless of its content.
Easy Digital Downloads Product Table Plugin

Available columns in the Easy Digital Downloads table view

To create a custom product table for Easy Digital Downloads, users can take advantage of Post Table Pro's table builder, which allows for easy customization with a drag-and-drop column editor. The generator offers a variety of column options to choose from, eliminating the need to know the correct syntax or use code-style column names. This intuitive approach makes it simple for users to create custom product tables without having to have technical expertise.

Recommended EDD table columns

  • Image: displays the primary product image, and you can select the image size.
  • Title: shows the name or title of the downloadable product.
  • Content: displays the main content of the product, which can be the full content or a set number of characters. However, if you're using a custom layout or page builder, this column may not look good in the EDD table. In that case, you can use the Excerpt column instead.
  • Excerpt: shows a brief description summarizing the product, which is recommended over the full content for the Easy Digital Downloads table.
  • Price: displays the main price for the product, including variable prices if you've added them. The table will show the default price for variable products.
  • Download Category: displays the category or categories of the download, which you can click on to filter the EDD table by category. You can also disable these links or set them to link to the download category page.
  • Download Tag: similar to the Download Category column, this displays tags instead and is another useful way to group and filter download products in the table.

The Easy Digital Downloads table can also list any custom field or taxonomy as a column. For example, you can create custom fields with a plugin such as Easy Post Types and Fields. This is ideal if you want to show Easy Digital Downloads custom fields or taxonomies on the front end of your website.

Other possible EDD product table columns

  • Product notes: If you've added special notes or instructions to appear on the purchase receipt for the product, then they will appear in this column of the table. For example, you might want to mention delivery timescales or methods here. (E.g. "You will receive the download via email within 1 hour of purchase.")
  • Author: The WordPress user who created the downloadable product. Not relevant for most Easy Digital Downloads tables, but I've included it just in case.
  • Date: The Publish date of the downloadable product. Again, you probably don't need this but it's there if you do. Change the date by editing the Publish date in the 'Downloads' list within WordPress.
  • Variable prices: This lists the different prices for any downloads in the tab
    Display Easy Digital Downloads Variable Prices
    le with variable pricing. As you can see from the screenshot, this isn't formatted in a very user-friendly way. The data comes straight from Easy Digital Downloads and there are no options for configuring it. You're probably better off displaying the variation prices in a button column, or just showing the default price in the cf:edd_price column.
  • Download sales: Total number of sales you've had of each download in the table.
  • Download earnings: Total earnings. This isn't presented in an ideal format. For example, if a product has had $27,200.54 worth of sales then this will be displayed as '27200.540000'. There are no options to change this, other than custom coding - but you probably don't need this column anyway.
  • Download files: This column shows the link of the download file(s) in plain text. (If you want to add a clickable link then you'll need to add this manually as a custom field column instead.)

How to add a 'Buy' button to the Easy Digital Downloads table

You might notice that the list of EDD table columns doesn't include a 'Buy' or 'Download' button.

It is possible to add a Buy button to the Easy Digital Downloads product table. This doesn't happen automatically, but is pretty easy to set up yourself:

  1. Use a plugin such as Advanced Custom Fields (free) to add an extra field to the 'download' post type. Call it whatever you like - I called mine 'edd_button'.
  2. Now go to the Add/Edit Download screen for the download that you want to add a Buy button for. You'll see the field that you just created lower down the page.
  3. In the right-hand column, you'll see a 'Purchase Shortcode' field where you can copy an EDD advanced shortcodes for the Buy button. This will look something like: [purchase_link id="8381" text="Add to Cart" style="button" color=""]
  4. Copy the EDD Purchase Shortcode into the custom field you just created and Save the download.
Add EDD buy button to product table
  1. Now, you need to add the new custom field as a column in your Easy Digital Downloads table. To do this, go to Post Tables → Tables, click to edit the table, go to the columns page, and add a custom field column. This will prompt you to enter the name of the custom field.
  2. You must also go to Post Tables → Settings and enable the 'Shortcodes' option to display the button correctly in the table.

Warning: The EDD 'Buy' buttons do not work with the lazy load option in Posts Table Pro, so make sure you disable this on the plugin settings page. If you need to list a very large number of downloads and have to use lazy load, then you may need to remove the Buy column and allow people to purchase on the single download page instead.

Simplifying digital product purchases with Easy Digital Downloads

Now view your Easy Digital Downloads product table. You'll see the extra column, complete with a button to add the download product option to the checkout page. If you're using EDD product variations then the variable pricing options will appear before the Buy button. Nice!

Easy Digital Downloads Table Order Form Plugin

Note: The wording and styling of the buttons in the Easy Digital Downloads table are inherited from EDD and your theme. They looked fantastic straight away in the WordPress themes we tested with, e.g. Storefront. If you want to change how they look then you'll need to add some custom CSS.

Related reading: If you're creating a WordPress eBook store with Easy Digital Downloads, check out our Ultimate Guide to WordPress eBook Plugins & How to Use Them.

Selling the EDD All Access Pass

Easy Digital Downloads has an All Access extension which you can use to sell all your downloads for a fixed discounted price. There are a couple of ways to sell this from your Easy Digital Downloads product table. You can even sweeten the deal by offering additional discounts with the use of discount codes and coupons, which can be easily applied on the product table page.

Easy Digital Downloads extensions let customers choose whether to buy individual downloads, or whether to upgrade to the All Access Pass (which means more revenue for you)!edd table

  1. You could manually add a link to the All Access Pass product page or a 'Buy' button for the All Access Pass underneath the main add to cart button for each product in the EDD table.
  2. Alternatively, you could add a right-hand column to the page with your Easy Digital Downloads table. Use it to display a widget promoting the All Access Pass.

Personally, I would recommend option 2 because the All Access Pass applies equally to all your digital downloads, so you don't need to repeat it for each one individually.

Listing EDD downloads from a specific category

If you want to display download products from specific categories in your Easy Digital Downloads table, it's easy to do so. By setting your table to show products from one or more specific categories, you can filter out irrelevant products and display only the ones that are relevant to your audience.

Additionally, with Post Table Pro's table builder, you can easily select specific downloads to include in your table. This allows you to curate a table that showcases only the products you want your audience to see, making it easier for them to find what they're looking for and ultimately leading to more conversions.

Adding filters to your Easy Digital Downloads tables

While customers can use the search box or sort columns by default in Easy Digital Downloads tables, they don't have the option to filter results. However, with Post Table Pro's table builder, adding filters is easy. The filter dropdowns can be added above the table and customized to fit your needs. With the ability to add as many filters as you like, you can make it simple for customers to narrow down their search to find exactly what they're looking for.

The filters available are extensive and can include categories, tags, authors, and any custom taxonomy that you've created. With the use of filters in Easy Digital Downloads extensions, you can improve the user experience for your customers and help them easily find and purchase the products they need.

Here's an example of an Easy Digital Downloads table with category and tag filters:

Easy Digital Downloads filter plugin

By default, the EDD product image and name will link to the single download sales page. This is where customers can see full details of the downloadable products, such as the full description and reviews.

If you don't want to link to the product detail page, then you can disable links in the Easy Digital Downloads table layout. Do this by going to Posts Tables → Settings, finding the Links option, and typing "none" in the box.

EDD table view plugin

Giving away free downloads

So far, we've talked about how to sell downloadable products in a table layout.

However, some Easy Digital Downloads sites like to give away free downloads. You can do this by adding Free Downloads of Easy Digital Downloads extensions. This will work with the instructions in this tutorial.

Can I hide my EDD products or make them private?

Posts Table Pro lists your Easy Digital Downloads products in a table and doesn't affect their visibility. To discover an easy way to password protect EDD download categories or hide them from public view, check out our other tutorial:

How to Password Protect Easy Digital Downloads Categories: 3 Easy Ways

Meet EU tax law

Easy Digital Downloads EU VAT trimmed

When you sell digital products online, it's important to make sure you meet European tax rules. This applies if you sell to customers in the EU - even if you're not based in the EU yourself.

You can easily do this with the Easy Digital Downloads EU VAT plugin. This is designed to help any EDD store to charge the correct VAT to each customer and provide all the evidence you need.

Get EDD EU VAT

Where to get the plugin

As you can see, an Easy Digital Downloads table is an ideal way to list EDD products. It's really flexible and you can choose which columns of product data to include, add filters, and more.

To create your own EDD tables, get Posts Table Pro today. Follow the steps in this tutorial and start increasing your download sales.

WooCommerce User Specific Products Plugin

Lots of people use WooCommerce to sell user-specific products. For example, you might want to sell different apparel or merchandise to sports teams or soccer clubs. Maybe you privately sell uniform products to to schools. You might sell branded company workwear with the company's logo, and need a hidden area of WooCommerce for each customer.

Perhaps you sell the same products to each customer, but with different prices. Maybe you're a health practitioner or service provider, and only sell to existing patients rather than the general public.

Whatever your reason for creating WooCommerce user-specific products, I'll show you how to do it. And the best thing is, it's really easy and you don't need to edit any code!

Which WooCommerce user-specific products plugin?

WooCommerce User Specific Products Plugin

We're going to create your user-specific products with our popular WooCommerce Protected Categories plugin.

This simple plugin lets you add hidden product categories to any WordPress WooCommerce store. You can have a separate category for each customer, each with their own user-specific items.

Your sports teams, clubs, companies or other types of customer will use a simple password to log into their organization's hidden category. Or if you prefer, you can automatically restrict your user-specific categories so that each one is only visible to a specific logged in user. Once they've unlocked their private WooCommerce category, they can view and buy their user-specific products. No one else will even know that their hidden products exist!

You can also use this plugin for user-specific pricing in WooCommerce. Simply follow the instructions in this tutorial, and add a different version of each product - each with its own unique price - to each customer's category.

Tips:

  • If you need a way to quickly clone products for each organization, then the free Duplicate Posts plugin is perfect.
  • If you're cloning products and want to manage inventory across each version of the product then we recommend the Group Stock Manager plugin. This lets you share stock levels across multiple products.

Let's get started.

Before you follow this tutorial

Before you start, you should have a WordPress website set up with the free WooCommerce plugin installed. The official WooCommerce documentation is a good starting point.

You can then use this tutorial to create your WooCommerce user-specific products and categories.

How to create user-specific product categories in WooCommerce

  1. WooCommerce Protected Categories Screenshot - Plugin Settings Page
    Configure the plugin on the WooCommerce Protected Categories settings page
    First, get the WooCommerce Protected Categories plugin. You'll use this to create your hidden customer-specific products.
  2. Secondly, install the plugin and enter your license key on the plugin settings page. You'll find this in the order confirmation email.
  3. Also on the plugin settings page, DO NOT tick the boxes to show your protected categories and products in the public parts of your store. This is important, as your WooCommerce user-specific products should only be visible to sports teams and organizations with the correct password.
  4. Next, go to Products -> Categories in the WordPress admin. Create a separate category for each sports club/organization that you wish to sell user-specific products to. Tick 'Protected' and either password protect it, or restrict it to a specific user.
  5. If you want to provide multiple categories for each organization, then you can do this by adding 1 or more sub-categories. You can create nested structures with as many sub-category levels as you like. As long as you set all the sub-categories to 'Public' and select the organization's main password-protected category as the 'Parent', all the sub-categories and their products inherit the same protection. Organizations only need to login to their account or enter a password once to unlock their whole hidden area.
WooCommerce school category visibility

Now add your user-specific products

  1. Now, you can add all the user-specific products. For each one, tick the appropriate product category. Leave the product visibility settings as the default. The plugin will automatically protect them with the same password(s) as the protected category.
  2. Lastly, create a user-specific category login page. This depends on whether you've set up password-protected or user restricted categories:
    1. WooCommerce password protected categories. Add the shortcode [category_login] to any page of your site. All the sports teams/organizations will use this login page to access their user-specific products. The plugin will redirect them to their own personal category when they enter the password.
      Now, link to this page in any way you like, for example from your navigation menu, website header or footer. Or you can keep the login page hidden and email it to your customers instead.

WooCommerce wholesale login plugin

  1. User restricted categories - Add a link to a front end login page. This could be the main WooCommerce 'Account' page, which displays a login form to logged out users and guests. Or you could install a front end login plugin such as Theme My Login. Either way, users can use this page to login to their account and unlock their hidden products.
    Finally, you can instantly redirect customers to their personal WooCommerce store by installing the free Peter's Login Redirect plugin. This has a handy feature to add a custom redirect URL for each individual user. Simply add the URL of their hidden WooCommerce category.

And that's it!

In 7 simple steps, you have created WooCommerce user-specific products and categories.

The sports teams or other types of organization will visit your website and access the login page. They will enter the password for their user-specific category, or log in to their WordPress user account. They will be redirected to the correct hidden category containing their user-specific products.

Each organization's category and their products are hidden from public view, so only people with the correct access details can see them. This includes hiding them from search engines and other places that people might accidentally find them.

Once your customers have found their user-specific products, they can add them to the cart and checkout using the standard WooCommerce checkout. You can use other plugins to add multiple payment gateways, shipping options, and everything else you need to make your store a success.

Related: Build a WooCommerce Wholesale Store with Hidden Categories for Each Customer.

Bonus tip #1 - Get more sales with a WooCommerce product table layout

WooCommerce order form plugin demoBefore we finish, I'll tell you about another great plugin for selling WooCommerce customer-specific products.

Our bestselling WooCommerce Product Table plugin lists products in a space-saving table view. It's an ideal layout for user-specific products because you are selling to the same customers on a regular basis. They're already familiar with your products and would rather order quickly from a one-page WooCommerce order form. They don't want to scroll through large images and multiple pages of products.

The WooCommerce table view lets your customers see all their branded products in one place. They can quickly search, sort and filter the table to find what they want. The multi-select checkboxes make it easy to tick as many products as they need. Finally, they can click a single button to add everything to the cart.

WooCommerce Product Table integrates beautifully with WooCommerce Protected Categories. Once the customer has unlocked their user-specific category, their own personal products will appear in the product table. This means that you can create a product table listing all your products, and each customer will only be able to see their own personal products. Neat!

Bonus tip #2 - Sell customizable products with Product Add-Ons

WooCommerce product configurator plugin

Many WooCommerce stores sell customizable client-specific products. For example, perhaps you sell sportswear or workwear and the client needs to upload their logo. Maybe the client wants to add custom text which you will print on their products.

You can do all this by adding another Barn2 plugin, Product Options. This lets you add extra fields to your user-specific products, such as File Upload fields and Text Input boxes. These fields appear on the single product page. Your customers can provide the extra information, and you will receive it via email once they place their order.

What do you need user-specific products for?

I hope the advice in this tutorial is useful and helps you to create your own WooCommerce user-specific products and categories. I'd love to know what sorts of organization you sell to that have their own unique products.

Do you provided branded apparel to sports teams? Maybe you sell corporate workwear with the company's logo. Maybe you do something else that I haven't thought of! Please let me know in the comments.

WooCommerce secret sale plugin

A WooCommerce secret sale plugin is perfect for creating a hidden sale, with special discounted prices that only pre-approved customers can see. Today, I'm going to tell you how to create secret sales for your own WooCommerce store.

We'll do it using the WooCommerce Protected Categories plugin, which just takes a couple of minutes to set up. You'll have your secret sale up and running in no time!

How does the WooCommerce secret sale plugin work?

WooCommerce Protected Categories is the perfect WooCommerce secret sale plugin. It works by creating a hidden WooCommerce category for your secret sale. The sale category contains your discounted products with the special pricing.

It's completely hidden from the public parts of your site, so only people with access to this hidden category can see the sale prices and buy at the reduced rates. Everyone else continues to see the full priced version of each product. They'll have no idea that the secret sale even exists!

There are 2 ways to share access to your hidden WooCommerce secret sale category:

  1. You can password protect the sale category with 1 or more secret passwords. Give the password to everyone who needs to access the secret sale.
  2. Alternatively, you can mark the WooCommerce secret sale category as 'private' so that only logged in users with the correct role can see it.

Next, I'll show you how to create a secret sale in WooCommerce with both options.

To follow these instructions, I'm assuming that you already have a WooCommerce website with full-priced versions of the products that you want to include in the secret sale. (If not, then the official WooCommerce documentation will help you get to this stage.)

Let's get started!

How to create a WooCommerce secret sale

  1. Get WooCommerce Protected Categories.
  2. Use the instructions in the 'Getting Started' email to install the plugin and activate your license key.
  3. On the plugin settings page, DO NOT tick the 2 options to show the hidden categories in the public parts of your store. You need the plugin to hide your secret sale products!
  4. Now, go to Products > Categories in the WordPress admin. Create a category called 'Secret Sale' (or whatever you want to call it). Don't worry about protecting it for now - we'll do this in the next section.
  5. If you want to sub-divide your secret sale into sub-categories, create these too. Select the main Secret Sale category as the 'Parent' of your sub-categories.
  6. Next, install the free Duplicate Post WordPress plugin. Go to the plugin settings page and make sure you have enabled the option to duplicate the 'Products' post type.
  7. WooCommerce duplicate product plugin
    How to duplicate a product in WooCommerce
  8. Now go to the main list of Products in the WordPress admin (this is the 'Products' list on the left). Hover over each product that you want to include in the WooCommerce secret sale and click the 'Duplicate' link that appears.
  9. This will clone the product and save the new version as a draft with '(Copy)' in the title. Click on each of your cloned products and make the following changes:
    • Remove '(Copy)' from the title.
    • Remove the product from the full-price category, and tick the secret sale category instead.
    • Change the main product price to the correct sale price.
    • Click the blue 'Update' button.

Now, your WooCommerce secret sale category contains a cloned version of each product with the special discounted price.

The next step is to protect your hidden sale category and hide it from public view.

Option 1 - Password protect your secret sale category

The easiest option is to password protect the category that you're using for the WooCommerce secret sale. Go back to the Edit Category page (Products > Categories in the WordPress admin). Click to edit the category and click the 'Password protected' option in the Visibility section. Enter 1 or more passwords to protect the secret sale category.

If your secret sale category has any sub-categories, leave these set to 'Public'. They will automatically be protected with the same password(s) as the main secret sale category, so customers can unlock the entire sale area with a single password.

Next, you need to create a way for eligible customers to access the WooCommerce secret sale category. You can either link directly to the secret sale category page (e.g. from your navigation menu or an email). Or, you can create a secret sale login form by adding the shortcode [category_login] anywhere on your site.

Either way, whenever someone tries to access the secret sale category (or one of its sub-categories), they must enter a valid password before they can see the sale products inside.

Option 2 - Restrict your sale category to specific logged in user roles

If all your customers already have a user account on your WordPress website, then you may want to automatically show the secret sale to eligible customers. This is more customer-friendly than forcing them to enter a separate password to unlock the secret sale.

You can achieve this using the private categories option in WooCommerce Protected Categories. Private categories (and their products and any sub-categories) are completely hidden from public view. They are visible to logged in users with the correct role.

  1. Go to Products > Categories and click to edit your WooCommerce secret sale category.
  2. Go to the Visibility section and select 'Private'.
  3. Save the category.

Chose which user roles can access the WooCommerce secret sale

Edit WordPress user roles for private categories, posts and productsBy default, this will make the secret sale products visible to logged in administrators and WooCommerce store managers. You probably want other user roles to be able to access the sale too. The free User Role Editor WordPress plugin is the solution. Follow these instructions to choose which role(s) have access to the private secret sale content.

If you want ALL logged in users to have access to the secret sale, then you need to make private content available to the Customer and Subscriber roles. If you want to create a separate user role for the secret sale, then you can do this too. That way, you can continue showing the prices to normal customers, with an extra user role for people who can access the secret sale.

Tip: You can change each customer's user role by going to the main Users page in the WordPress admin, clicking to edit the user, and selecting a different role from the dropdown.

How do users log into the secret sale?

If you're using the private categories option for your WooCommerce secret sale, then the discounted products will automatically be available to logged in users with the correct role. You don't need a separate login form for the secret sale.

Instead, customers can simply login using the standard login form for your WooCommerce store. If you haven't added one yet, then the WooCommerce 'My account' page will automatically show a login form to logged out users. Or if you prefer, you can create a login form using a plugin such as Theme My Login. Either way, logging in will unlock the secret sale for the correct user roles.

Ending your WooCommerce secret sale

All good things come to an end, and secret sales are no exception.

When it's time to end your secret sale, it just takes a minute to close it down:

  1. Use the free Redirection WordPress plugin to automatically direct everyone who tries to access your secret sale category to your main WooCommerce store. This will prevent people from seeing any broken links, for example if they have bookmarked the sale page. If you want to be really belt and braces, then you can also do the same for your sale products.
  2. Next, you can either delete your secret sale category completely via Products > Categories. Or, if you're planning to reactivate your WooCommerce secret sale in future, then just change the password to something that no one else knows. That way, you can easily create new sales in future, but you've locked everyone out for the time being. (If the category is set to private, then you just need to switch it to 'Password protected' and add a password.)
  3. Decide whether to delete your sale products or keep them dormant until the next secret sale. If you decided to keep them, then you don't need to worry about anyone seeing the discounted prices while the sale is inactive. They're still in the password protected category and will remain hidden from public view.

Now you're ready to set up the WooCommerce secret sale plugin

And that's it! In this tutorial, I've told you everything you need to know about how to create a WooCommerce secret sale. You can create a category for your sale, add a discounted version of each product, and hide it from public view. I've shown you how to password protected the secret sale, or make it available to specific user roles only.

Now it's time to get started and use the WooCommerce secret sale plugin on your own website. The plugin comes with a full 30-day money back guarantee, so you can try it risk-free today. Happy selling!