WooCommerce quantity discount plugin product table

Lots of people ask us which WooCommerce bulk discount plugins work with our Product Table and Quick View plugins. Discover WooCommerce Discount Manager, which works beautifully with WooCommerce Product Table and WooCommerce Quick View Pro.

In this tutorial, we'll explain how you can use bulk discounts and dynamic pricing with your own product tables and quick view popups on your WordPress site. You can also see a product table with WooCommerce Dynamic Pricing in action on our demo page.

Alternatively, check out our full tutorial on how to create WooCommerce bulk discounts.

Introducing WooCommerce Discount Manager

WooCommerce Discount Manager add discount type
The official WooCommerce Dynamic Pricing extension lets you create bulk discounts based on a minimum and maximum quantity for specific products, across your entire WooCommerce store, or for specific categories or even specific products. It's an incredibly advanced WooCommerce discount plugin and you can use simple or advanced logic to create sophisticated pricing rules. It also comes with user role based pricing.

How it works with WooCommerce Product Table

If you're using WooCommerce Discount Manager on your WordPress site, then customers can choose a quantity from the product table and click the Add to Cart button. When they click through to the cart and checkout page, the correct quantity based pricing discount will be applied based on the quantity ordered.

If your product table page has a sidebar, then you can add the WooCommerce Cart widget. When people add products to the cart, the correct volume discount or quantity discount will be shown in the Cart widget on your WooCommerce store. This reassures customers that the volume discounts are working.

If there's no Cart widget on the page, then customers can see the cart discount when they click through to the cart and checkout.

The 'Price' column in the product table will always show the price for a single item. See below for some suggestions on how you can display available bulk discounts in the product table.

How it works with WooCommerce Quick View Pro

If you're using the Discount Manager dynamic pricing plugin with WooCommerce Quick View Pro, then the correct discounted price will appear in the quick view lightbox.

Can I show the bulk discount prices in the product table?

If your product table includes a product Price column then this will always show the product price for 1 item. This applies whichever bulk discount or dynamic pricing plugin you use - the Price column never changes.

When you create a discount, you can add some text to be displayed about the deal, and/or enable a tiererd pricing table. These always appear on the single product page (and in the WooCommerce Quick View Pro lightbox), and you can also display them in a special discount_content column of the product table like this:

WooCommerce Discount Manager with Product Table

Where to get the plugins

As you can see, WooCommerce Discount Manager works beautifully with the product table layout. It also works nicely with WooCommerce Quick View Pro if you want to show the discounted prices in a quick view lightbox on your WordPress site.

Lots of customers have asked us how to add wishlists to their WooCommerce product tables and quick view lightboxes. We've tested our WooCommerce Product Table and WooCommerce Quick View Pro plugins with the best premium and free WooCommerce wishlist plugins.

This tutorial will help you to choose the right wishlist plugin to use with your product tables and quick views, with setup instructions on how to use them together. All of the WooCommerce wishlist plugins have a Pro version with extra features.

MC Wishlist

When working with WooCommerce Product Table and WooCommerce Quick View Pro, you expect automation and integrity from your wishlist plugin. Lucky for you, the MC Wishlist plugin has complete integration and works harmoniously with these plugins.

MC wishlist offers a free widget for Elementor and has shortcodes for all wishlist buttons, pages, and counters that you can use everywhere you want. These features - along with the wishlist counter, pop-ups, and marketing toolkit - may be reasons to give this plugin a shot.

How it works with WooCommerce Product Table

Product table with MC wishlist button

Due to its high flexibility, the MC WooCommerce Wishlist plugin works well with the table in both standard and lazy loading modes. All the settings related to the wishlist button, such as button text, icon, color, position, etc., can be edited through the settings of this plugin, and it works in harmony with the table.

Also, when you click on the add to wishlist button, the plugin offers different modes, including pop-ups, which you can choose according to your needs.

Wishlist single product page settings

How to set it up

  1. Install and activate the MC WooCommerce Wishlist and WooCommerce Product Table plugins, as per the documentation.
  2. After activating the MC wishlist plugin, you will enter the setup wizard. Here you can change the location (top, bottom, left, and right of the Add to cart button) and the text of the add to wishlist button. These choices can be changed from the wishlist settings.
  3. (If needed, you can use the [wlfmc_add_to_wishlist] shortcode to put the wishlist button in your desired location. Note that you should use the single product page settings for this purpose.)
    From the WooCommerce Product Table settings, add the table you want to a desired page (for example, the shop page).
  4. Now go to the page where you added the table and see the result.

How it works with WooCommerce Quick View Pro

MC Wishlist is well coordinated with WooCommerce Quick View Pro. When a customer opens the quick view lightbox, the add to wishlist button is included too. The wishlist button's appearance is styled based on whichever option you have chosen in the wishlist settings.

You can choose what happens after clicking on the wishlist button. For instance, you can choose to add to the wishlist only or show a customizable popup. It changes to a 'Remove from Wishlist' link after adding to the wishlist.

How to set it up

  1. Install and activate the MC WooCommerce Wishlist and Quick View plugins, as per the documentation.
  2. After activating the MC wishlist plugin, you will enter the setup wizard. Here you can change the location (top, bottom, left, and right of the Add to cart button) and the text of the add to wishlist button. These choices can be changed from the wishlist settings.
  3. (If needed, you can use the [wlfmc_add_to_wishlist] shortcode to put the wishlist button in your desired location. Note that you should use the single product page settings for this purpose.)
  4. Now, by going to your product listing page, you can see the quick view button by hovering over the images. After clicking on quick the view button, you can see the wishlist button in the opened window.

YITH WooCommerce Wishlist Plugin

YITH's wishlist plugin is one of the most popular ways of adding wish lists to WooCommerce. You can use it with WooCommerce Product Table or WooCommerce Quick View Pro by adding the wishlist shortcode to the appropriate place. I'll provide instructions for both plugins below.

How it works with WooCommerce Product Table

You can use the YITH WooCommerce wishlist plugin to add 'Add to Wishlist' text links in your product table. When you add a product to the wishlist, the text will change to "Product added! Browse Wishlist" (you can change this if you like), with a link to the wishlist page.

The plugin works fine with WooCommerce Product Table. However, you can't add the wishlist link within the add to cart column. You can add it to any other text-based column in the table. Or if you're a developer, then you can use the developer documentation to add a custom column containing the wishlist shortcode.

How to set it up

  1. Install the WooCommerce Wishlist and Product Table plugins, as per the documentation. Add product tables to your site as required.
  2. On the YITH plugin settings page (YITH Plugins → Wishlist), select 'Shortcode' from the 'Position' dropdown list. (If you select any of the other options then the 'Add to Wishlist' link will appear on the single product page, but not in the product table.)
    YITH WooCommerce wishlist plugin settings
  3. The next step is to paste the wishlist shortcode [yith_wcwl_add_to_wishlist] into one of the fields that you're displaying as column in the product table. You need to do this for every product. You can either add the shortcode to the short description for each product, the main product description for each product, or a custom field (e.g. created using the Advanced Custom Fields plugin).
  4. On the WooCommerce Product Table plugin settings page (WooCommerce → Settings → Products → Product tables), enable the 'Shortcodes' option. You should also use the columns option to ensure that whichever field you've added the wishlist shortcode to is present as a column in the table (for example, if you have added it to the short description then your table must contain a summary column).
  5. Now view the page where you added a product table in Step 1, and you will see the 'Add to Wishlist' buttons in the correct column:
YITH wishlist plugin product table

How it works with WooCommerce Quick View Pro

You can use YITH WooCommerce Wishlist with WooCommerce Quick View Pro by adding a wishlist shortcode to the short description field. When your customers open up the quick view lightbox for a product, they'll see a wishlist link. This appears at the end of the short description:

How to set it up

To use YITH's wishlist plugin with WooCommerce Quick View Pro, you must add a wishlist shortcode to the short description for each product.

  1. Install the WooCommerce Wishlist and Quick View plugins using the documentation for each plugin.
  2. On the Quick View settings page (WooCommerce → Settings → Products → Quick view), make sure you enable the short description field. This is where the wishlist links will appear.
  3. On the YITH plugin settings page (YITH Plugins > Wishlist), select 'Shortcode' from the 'Position' dropdown list. (The other options will add the wishlist link to the single product page. But it won't appear in the product table.)
    YITH WooCommerce wishlist plugin settings
  4. Next, edit each product and add the following shortcode to the short description (this normally appears at the very bottom of the Edit Product screen) - [yith_wcwl_add_to_wishlist].

WooCommerce Wishlist Plugin by Acowebs

Acowebs have kindly integrated their WooCommerce wishlist plugin with WooCommerce Product Table and and WooCommerce Quick View Pro. This is how to use the plugins together.

Using Aco Wishlist with WooCommerce Product Table

  1. Install the free Wishlist for WooCommerce plugin by Acowebs or its pro version, WooCommerce Wishlist.
  2. Also install Barn2’s WooCommerce Product Table plugin and add a product table to any page on your site.
  3. When you activate the Aco wishlist plugin, you can choose the position for the 'Add to Wishlist' button above or below the add to cart button from product page setting, and both will appear correctly in the product table.
    Acowebs WooCommerce wishlsit plugin
  4. Alternatively, if your product table doesn't have an add to cart column, then you can use the shortcode [awwlm_add_to_wishlist] in any other column that appears in the table. To do this, use the documentation on adding a custom column to the product table. Specifically, when following the documentation, you should add the following code:
    Add wishlist icons to WooCommerce Product Table
  5. Check the page with your product table, and you will see the Add to Wishlist links in the table:

Using Aco Wishlist with WooCommerce Quick View Pro

  1. Install the free version of the WooCommerce Wishlist Plugin by Acowebs or its pro version WooCommerce Wishlist.
  2. Also install Barn2’s WooCommerce Quick View plugin as per the documentation.
  3. When you activate the Aco wishlist plugin, you can choose the position for the 'Add to Wishlist' button. Use the settings page to select either above or below the add to cart button. Whichever you choose, the wishlist button will appear correctly in the quick view popup.

TI WooCommerce Wishlist Plugin

With over 3,000 active installs, TemplateInvaders' WooCommerce wishlist plugin is a popular choice for many stores. It automatically works with WooCommerce Product Table and WooCommerce Quick View Pro.

The wishlist plugin comes with a widget which shows the number of items in the wishlist. It has a handy link to the main wishlist page.

How it works with WooCommerce Product Table

WooCommerce added product to wishlist in tableThis flexible plugin works beautifully with product tables - both the standard and lazy load methods of loading the table. The 'Add to Wishlist' links (which you can reword to anything you like) appear either above or below the add to cart button, or in any other column in the table. If you're using the add to cart checkbox option that comes with WooCommerce Product Table, then the 'Add to Wishlist' link appears before the checkbox.

When you click on the 'Add to Wishlist' link for any product, a lightbox will appear confirming that the product has been added. You can either close the popup or click through to the wishlist page, where you can view the items, share them on social media, or buy using WooCommerce.

Demo: See it in action on our product table wishlist demo page.

How to set it up

  1. Install the WooCommerce Wishlist and WooCommerce Product Table plugins, as per the documentation.
  2. Add a product table to any page on your site.
  3. When you activate the WooCommerce wishlist plugin, you'll be taken through a handy setup wizard where you can choose how your wishlist will work. You can choose to position the 'Add to Wishlist' button above or below the add to cart button, and both will appear correctly in the product table. Or if your product table doesn't have an add to cart column, then choose the 'Custom position with code' option and add the shortcode [ti_wishlists_addtowishlist] to any other product field that appears in the table. For example, if you add this shortcode to the short description, long description or a custom field for each of your products, then it will appear in the table.
  4. View the page with your product table, and you will see the Add to Wishlist links!

Tip: If you're using the 'Custom position with code' option, then you must add shortcodes="true" to your product table. You can either do this in the plugin settings page, or directly in the product table shortcode.

TI WooCommerce Wishlist Plugin Product Table

How it works with WooCommerce Quick View Pro

The TI WooCommerce Wishlist plugin works beautifully with WooCommerce Quick View Pro, automatically adding wishlist links to the quick view lightbox. You can choose to position the links before or after the add to cart button.

How to set it up

  1. Install the WooCommerce Wishlist and Quick View plugins using the documentation for each plugin.
  2. When you activate the WooCommerce wishlist plugin, you'll be taken through a handy setup wizard where you can choose how your wishlist will work. You can choose to position the 'Add to Wishlist' button above or below the add to cart button, and both will appear correctly in the quick view lightbox. Or if you don't need add to cart buttons in the quick view, then you can show the wishlist links by adding the shortcode [ti_wishlists_addtowishlist] to the short description for each product and including this in the quick view instead.
  3. Test the quick view lightbox for any product, and you will see the Add to Wishlist links!

Please note: The TI WooCommerce Wishlist plugin has a 'Show successful notice in popup' option on the settings page. DO NOT enable this option because quick view is a popup, and you can't have two popups at a time. (If you do enable this option, then nothing terrible will happen - but you won't see a success message saying that the product has been added to your wishlist.)


Which is the best WooCommerce wishlist plugin?

If you want to use wishlists with WooCommerce Product Table or WooCommerce Quick View Pro, then I'd recommend MC Wishlist or TemplateInvaders' WooCommerce Wishlist plugin. These are easier to set up because the wishlist buttons automatically appear in your product tables and quick view popups.

YITH's WooCommerce wishlist plugin is good too. However, you need to manually add the wishlist shortcode. If you're happy to do that, then this is a valid option too.

Other WooCommerce wishlist plugins

If you're using WooCommerce Product Table or WooCommerce Quick View Pro with any other wishlist plugins, please let us know. We'd love to test them and publish the details of any more that are compatible. We might even be able to feature your website as a case study!

Passive income is the holy grail for modern online entrepreneurs. The term conjures up images of the successful web store owner reclining in a hammock on some golden-sanded beach, cocktail in one hand, while a sales counter on a nearby laptop slowly ticks upward. A WooCommerce Amazon affiliates website is one of the best ways of achieving this holy grail of online marketing.

The internet – and WordPress (with WooCommerce) in particular – has created unique opportunities to earn money online without having to work for each sale. And one of the most effective, not to mention simplest, ways of doing this is by creating a WooCommerce product reviews website. It works by comparing and reviewing products from Amazon, utilizing the Amazon affiliates program.

WooCommerce Amazon affiliate plugin

You can start a WooCommerce product reviews website on a shoestring budget (under $200) and gain substantial rewards. With that in mind, this guide will show you how to build a WordPress website that can earn Amazon affiliates commissions by publishing product reviews and comparisons. We’ll focus on free tools and plugins where possible. I will only recommend paid options if there’s no free alternative.

You'll build your WooCommerce amazon affiliates site using WordPress, which is free. We’ll bolt-on to WordPress the similarly free WooCommerce plugin, which powers over 41% of all online shops worldwide. This means you’re in good company :)

We’ll also be looking at how to use the WooCommerce Product Table plugin to list products and reviews in a user-friendly product comparison table, with extra features such as search, sort, and filter. This will make it easier for customers to compare the products you’ve reviewed at a glance, make quick buying decisions. And – most importantly – click on your Amazon affiliate links.

What is the Amazon affiliates program and how does it work?

We’ve been discussing the Amazon affiliates program. But what is it, exactly, and how does it work? Well, it’s very simple. Here are the three steps involved:

  • You develop a genuinely useful website with comparisons and reviews of other companies’ products. These might be reviews you have added yourself and/or reviews that other visitors to your website have written.
  • Consumers find your website and use the information to decide what to purchase. You’ll list the products on your website using the WooCommerce plugin. But instead of selling the products directly on your site, the Buy button will take the visitor directly to the Amazon listing. This is your affiliate link.
  • The consumer decides to buy! They’ll do this on Amazon as usual, but since they came to Amazon via your site, and you used your Amazon affiliates link, Amazon will share roughly 5% of the value of the sale with you. (This varies depending on the specific product). This is your affiliate commission.

The great thing about this system is that everyone wins: readers find helpful information and reviews about products they’re interested in, Amazon gets more sales, and you take a share of the proceeds.

If it’s that easy, why isn’t everyone doing it?

WooCommerce affiliate product review websiteSo here’s the thing: developing this kind of site is simple (as you’ll see from this guide) – but it would be a bit of a stretch to call it “easy”. As we’ve discussed, there is a small cost involved along with the time required to set the site up. There's also the skill of making sure the reviews and comparisons are valuable to consumers.

The key phrase you should have picked up on in the previous section is that your website needs to be genuinely useful. Your WooCommerce Amazon affiliates website will only be truly successful if you offer meaningful, engaging content that provides value for consumers.

A key part of the strategy of getting visitors to your Amazon affiliates website will be ranking your site well for relevant search terms. (We’ll discuss this later.) Thus, you have to make sure Google is happy. Here’s a tweet from a Google employee that summarizes Google’s position:

You must publish quality reviews and comparisons that aren’t already available elsewhere. If you don’t get this part right, search engines (rightly) won’t think highly of your site. Consumers won’t have a reason to visit your site, and you won’t earn any Amazon affiliates commission.

However, if you work hard at finding a niche and spend time adding and promoting unique content, then the obvious appeal of passive income can work well for you. The quality content point is especially important, so be sure to get that right. Now, we’ll move on to look at how to select the niche of your WooCommerce Amazon affiliates website.

Which niche should your WooCommerce Amazon affiliates target?

If you can earn a commission for each sale you refer to Amazon, your site should just list as many Amazon products as possible, and you’ll get more commission – right? Unfortunately, no. Your WooCommerce Amazon affiliates website must focus on a niche.

Search engines will respect the authority of a site that clearly focusses on one thing. Here are some examples of good niches for a WooCommerce Amazon affiliates store:

  • guitars
  • office supplies
  • televisions
  • hot tubs (!)

These examples are fairly disparate, but they all have a couple of features in common:

  • Customers have a lot of choice, with no obvious “best” product. Furthermore, all the products are fairly similar in outcomes. A consumer wanting to buy a guitar is plausibly confused and will search for reviews – this is where you come in.
  • Each item is relatively expensive. You earn a fixed commission from Amazon, so the higher the price of the product, the higher your commission.
  • Amazon offers a good selection of all these products. To run a WooCommerce Amazon affiliates website you must, obviously, be able to link to Amazon products.

How to choose the right niche

When selecting your niche, you should also consider your expertise or personal experience. If you happen to be an expert (or at the very least an enthusiast) in electric guitars, you’ll find it a lot easier to comprehensively review and compare guitars.

Finally, consider the competition. Who else is already reviewing the product you’re considering? If a potential niche is particularly crowded – such as guitar reviews – then get more specific! Guitar reviews may be a well-covered market, but what about the best guitars for teenage girls? Television reviews will be well-covered, but what about the best televisions for small apartments? Get creative and find a space within your niche that is under-served. Search the relevant terms your potential visitors will use to get a sense of what is well-covered and where there is a gap in information.

Take a pen and some time now to work out your niche. You may need to go through a couple of ideas before you hit on the right one, but that’s fine! It’s incredibly important to get this section right, as it will directly impact how much affiliate commission your site will drive later.

Search engines will reward the websites and content that are demonstrably the best in their given field. The vast majority of search clicks go to the top couple of search results, so make sure your chosen niche is specific or under-competed enough, so that you can produce the best content, and take those top search rankings.

Case Study – Best Toys for 2 Year Olds WooCommerce Amazon Affiliates Site

Just to prove that I’m not afraid to put my money where my mouth is, let’s take my own Amazon affiliates site Best Toys for 2 Year Olds as an example. This site is powered by WooCommerce and uses precisely the same formula as you’ll find here.

 

I founded the site because at the time, I had a daughter this age and had been struggling to find developmentally age-appropriate toys. It occupies a niche about which, thanks to my personal experience, I felt I could speak with some authority, giving value to readers.

It’s a very simple website that provides parent-friendly advice and reviews on the best toys for 2 year old children. It’s intentionally non-corporate and speaks from one parent to another. Parents can read the advice and then click through to buy the products on Amazon, which generates the affiliate commissions.

WooCommerce table of affiliate products

On posts such as the Best Christmas Toys for 2 Year Olds, I’ve used the WooCommerce Product Table plugin in order to display the products in very convenient, sortable tables. This lets parents generate personalized comparison lists, specific to their own criteria. If, for example, they are focused on price, they can find the cheapest toys; if they want toys from a specific category, they can also sort by these. This is the kind of genuine, added value that has made my WooCommerce Amazon affiliates site successful, and it can do the same for you.

Now that you’ve seen what can be done, let’s get on to the specific detail and step-by-step instructions you need to get started.

How much does a WooCommerce Amazon affiliates site cost?

As we’ve mentioned already, there are a handful of costs involved when setting up your WooCommerce Amazon affiliates website. The good news is that this is not expensive to set up, and a successful site will have no problem making this upfront money back in no time.

Remember, thanks to the magic of passive income, once you’ve done the work, each additional sale is pure profit, so the upside is very large!

Here are the three costs involved in setting up your site

  • NameCheap This is the name of your website (for example, barn2.com). You’ll need to choose a name (i.e., barn2) and an extension (i.e., .com or .co.uk). You should choose a name relevant to the niche you’ve selected, but keep in mind that millions of domains have already been registered, so you may need to get a little creative. You can use a tool such as NameMesh to make the process of finding an available domain easier and a registrar such as NameCheap for your registration.
  • Web hosting This is how your website is powered. As such, it’s incredibly important! Good hosting will make sure your website is fast, secure, and reliable (all this is very important for keeping and retaining visitors, and making search engines happy). We recommend WP Engine, an excellent WordPress-specialist host that does everything for you. You can get cheaper hosting elsewhere (if you have to do this, choose SiteGround), but you’ll find excellent hosting is money very well spent.
  • WooCommerce Product Table plugin This is the only paid plugin for WooCommerce needed for this tutorial. You need it to display your products, ratings, and affiliate buttons in a nice, user-friendly comparison table or grid, which can maximize your affiliate income. This is made by our development team at Barn2, so you can be confident of the quality.

The costs come to the low hundreds of dollars; it’s cheap to set this up, and the main investment, therefore, is your time. The setup itself won’t take long, but you will need to spend time on your content. We’ll talk more about this later on.

How to Set Up A Successful WooCommerce Amazon Affiliates Website in 5 Easy Steps

With the prerequisites taken care of, let’s turn our attention to the specific steps you need to set up a successful WooCommerce Amazon affiliates website. You’ll want to take the time to methodically follow each of these, and once you’re at the end, you’ll have your new site live! Let’s make a start.

Step 1 – Sign up to the Amazon affiliates program

The obvious first step is to sign up for the Amazon affiliate program. You can do this from the Amazon Associates page: follow the prompts, agree to the terms, and you’ll be good to go.

Register WooCommerce Amazon affiliates

Once signed up, it’s easy to get Amazon affiliate links for any product: your Amazon account will have an “Amazon Associates SiteStripe” added across the top of the site, and you just need to click Get Link → Text to get personalized affiliate links from any page on Amazon. This is what you’ll use later when linking products from your website, instead of regular Amazon links.

You can make things easier for yourself later on by selecting ten products that you want to review or compare on your site, and getting their affiliate links now. You might find it useful to save them in a spreadsheet for easy reference.

It’s worth mentioning that while this guide is focused on creating a WooCommerce Amazon affiliates website, you don’t have to use Amazon. The method here will work for any affiliate program; we’re focusing on Amazon as it’s the easiest and most convenient. You could, for example, choose to join our WordPress plugins affiliate scheme, and earn a 30% commission on the sales you refer to us :)

Step 2 – Set up WordPress with WooCommerce

It’s now time to get started with your WordPress website

If you’ve chosen WordPress hosting with WPEngine (as we recommended), you’ll find everything set up for you. If you went with SiteGround, the cheaper, option, you’ll need to follow a couple of simple steps, but it’s all self-explanatory.

You’ll need to connect your domain name to your hosting. This needs to be done manually: WPEngine has video instructions here, and SiteGround has instructions here.

Once WordPress is setup, head to your new WordPress Dashboard (available at yoursite.com/wp-admin). You’ll want to take a minute to get familiar with how WordPress works: click around to get a feel.

Install a WooCommerce-ready theme

The first thing we’ll do is install a WordPress theme. This is a pre-built, professionally-made website design that can be dropped onto any WordPress site – including yours! Here, we’ll be using a free WordPress theme specifically designed for WooCommerce called Storefront.

Storefront is really easy to install: from the WordPress Dashboard, head to Appearance > Themes, search for Storefront, find the theme, then click Install > Activate.

If you don’t like the design, you can use one of the Storefront child themes, which provide a nice choice of skins. The child theme designs are either free or $39. They all come with full instructions and documentation on how to set them up.

Storefront WooCommerce theme

If you want a more versatile theme, there are plenty of WooCommerce-ready themes on ThemeForest. These typically have significantly more features than Storefront and its child themes, but take a lot more work to set up. There’s also a greater potential for things to go wrong, due to the extra complexity. You should only choose a more flexible/complex theme if you’re sure you know what you’re doing and can see that there are definite benefits in doing so.

WordPress makes it remarkably simple to install a theme (it’s just the setup that can take longer), so whichever you go with, you’ll find you very quickly have a great design on your site.

Step 3 – Install WooCommerce

Next, we’ll install WooCommerce. As we’ve touched on, this is the leading eCommerce platform that we’ll use to list and sort the products you’re reviewing. WooCommerce is normally used for selling products, but it can equally be used to power affiliate websites. We’ll get to this later on.

How to Install WooCommerce

WooCommerce is free and incredibly easy to install. Head to the WordPress Dashboard, then Plugins > Add New. Search WooCommerce, and then install and activate the plugin.

Setup WooCommerce

Next, run through the WooCommerce Setup Wizard. This is the quick way to set up your affiliate store, so follow the steps through to the end. Skip any steps that only apply to regular eCommerce stores.

Now you're all set up with WooCommerce!

Nice work: you now have a website, a professional design, and the world’s leading eCommerce platform. Next up, it’s time to add your products.

Step 4 – Add your Amazon affiliate products, with descriptions or reviews

This has all been fairly straightforward so far - technical, perhaps, but straightforward nonetheless. Here we get to the part that requires your personal skills: adding your products and writing the descriptions and reviews.

How to add WooCommerce Amazon Affiliate Product

You can add your first product by heading to Products > Add New, and filling in the fields:

  1. Add all the information for the product, starting with the title. Some info, such as categories or tags won’t be relevant, but make sure to add everything that is. You can copy this from the Amazon listing.
  2. Add a product image. Images ensure that your reviews are more engaging. You can also copy these from the Amazon listing, and add them under the Product Image box.
  3. Add the main description! Now we’re getting into the fun part. You’ll need to describe the product in your own words; do not just copy from the Amazon listing, as visitors and search engines will want to see original content here. Remember, visitors need a good reason to come to your website, so add value here by adding extra information or by displaying the information in a more accessible format.
  4. Add your review of the product. If you decide to add product reviews rather than just comparisons, then add your review below the main description! Make it easy for the reader by highlighting the key information they need to know, answering the questions they’re likely to have, and making a recommendation on whether the product is right for them.

Now add your WooCommerce Amazon affiliates product info

This section is where your site can really add value – something that makes or breaks the success of a WooCommerce Amazon affiliates site – so take the time to get this right. With this section complete, you can turn to add the product data. Again, there are a couple of steps to follow:

WooCommerce affiliate product
  1. Select External/Affiliate product from the dropdown list in the Product Data section. Add your Amazon affiliate link for the product under Product URL, and add the text you want to appear on the button under Button text. “Buy on Amazon” or similar will be appropriate.
  2. You may wish to add the product price and sale price. This makes it more convenient for the reader by displaying the product price before they click through – but lines you up to have to update the price regularly. If you’re okay keeping this up to date, you’ll find readers appreciate the extra information.
  3. Reader-generated content is some of the best content you can have. Why? Because it adds value and you don’t have to write it! Under the Advanced tab, you can tick “Enable reviews” to let visitors leave their own reviews. This has the added benefit of adding “social proof” to your site, which can in turn make your own reviews more credible. WooCommerce will collate the product ratings, and you can display these as a column in your comparison tables (we’ll get to this in the next section).
  4. Finally, click the blue ‘Publish’ button to set your product live!
WooCommerce Amazon Affiliate Product

Now add your other Amazon affiliate products in WooCommerce

It’s now just a case of repeating the steps for all of the products you want to add. This will take you some time, but do make sure to do a thorough job: these reviews will be the backbone of your site!

Once you’ve got your content added, we’ll move onto making their display look nice.

Step 5 – Setup the WooCommerce Product Table

A site filled with excellent products and reviews is no use if nobody can find them! Your next task is to lay out your products and reviews into an easily-accessible format, so that visitors can both browse and find what they’re looking for more effectively.

To do this, you’re going to need the WooCommerce Product Table plugin we mentioned earlier. Buy yourself the plugin (this is the only plugin you’ll have to pay for in this guide). Follow the included instructions to install, and then enter the license key.

You can now add a neat table of your products to any post or page on your site! Earlier, we mentioned the advantages of having this in practice on Best Toys for 2 Year Olds. Readers can take the available information and sort it according to the criteria most important to them. This makes your site much more valuable!

The product table also lets you collate products for specific events and dates. On our case study site, birthdays and Christmas would be great examples.

Add your WooCommerce affiliate product tables

Create a new post by heading to Posts > Add New. You’ll need to flesh the post out with a title, introduction, categories, images, and so on, but you can come back to these later. For now, we’ll focus on the product table: enter the shortcode [product_table] into the main content area, and click Preview. This will generate a default WooCommerce table that lists all of your products. This will include four columns: name, summary (short description), price, and buy button.

Add WooCommerce Amazon Affiliates Product Table

Customize your product tables

You can use the instructions in the plugin knowledge base to customize the table in as many different ways as you like. You’ll get the best results from getting creative and playing around with all the different options to create as many WooCommerce comparison tables as you like, each listing different affiliate products.

An example

Here’s an example to get you started. This will create a product table that’s suitable for most WooCommerce Amazon affiliates or review websites:

[product_table columns="image,name,description,reviews,buy" category="clothes" description_length="-1"]

WooCommerce Amazon affiliates product tableThis table will list products from a category called “clothes” with their image, name, full description, overall star rating, and affiliate link buttons. Replace “clothes” with the slug of the category you want to list in the table.

The description may be the full review that you have written or simply your description of the product.

If you prefer, you can reduce the description length to show an excerpt, and customers can click through to the read the rest on the single product page. Or, if you don’t want customers to be able to access the single product page, add links="none" to the shortcode. This will disable all the links, so the only action that people will be able to take is to click your affiliate links!

The product reviews column will contain the average star rating, based on reviews that other visitors to your website have added. (The stars will be blank at first, as there are no reviews yet.)

You can now click Publish in order to set your post live, or continue reading for extra WooCommerce Product Table tricks :)

Table Tricks 1: Replace the single product page with quick view

WooCommerce external affiliate product quick view

The faster customers can complete a purchase, the less likely they are to give up and go elsewhere. As a result, you need to ensure that customers can buy as quickly as possible. This involves minimising the number of pages that the customer has to visit.

If you're building an Amazon affiliate website then by definition, customers have to load an extra page in order to buy. That's because they have to visit your website first, and then click through to the affiliate site to buy the product.

By default, WooCommerce creates a separate page for each product. This includes affiliate products.

If you want to show extra product images or a short description directly on your WordPress Amazon affiliate website, then you can do this on the single product page. Customers can view products in the comparison table layout, and click on one to access the individual product page. However, this involves loading an additional page for each product.

WooCommerce Product Table Quick View Magnifying Glass
Add quick view buttons to the list of affiliate products.

Instead, you can install the WooCommerce Quick View Pro plugin. This lets you add 'quick view' buttons to the product table. Customers click on these to view the full product image gallery and/or extra information. This might include the short description and a button with your affiliate link. The extra information appears in a quick view lightbox popup. It's much more user-friendly than taking them to a separate page.

Customers use the quick view to speedily learn more about each product. When they're ready, they click on your affiliate link to complete their purchase on Amazon.

Tip: If you're using WooCommerce quick view, then you might want to disable the links to the single product page completely. This is an option on the WooCommerce Product Table plugin settings page.

Table Tricks 2: Add extra product data to the comparison table

When we added our products earlier, we added various types of data such as title, description, price, categories and tags. You can display all of this in the WooCommerce product comparison table.

If you need to store and display even more data about the products, then you can do this by creating WooCommerce custom fields and taxonomies. Add them as columns in the table. You could, for example, add extra technical data to your televisions review site. This will help visitors filter which products are right for them.

Remember that you need to add value with your site. Adding extra information to your comparison table is a great way of doing this.

Table Tricks 3: Add filters to the WooCommerce Amazon Affiliates product table

If you’re comparing lots of products, then filters can make it easier for visitors to find the products they’re looking for.

WooCommerce Product Table has 2 types of filters: dropdown lists above the comparison table, plus sidebar widgets. Customers can use these to filter by various types of product data, price, or average rating.

These are just additional ways of adding extra information, sortability, and value to your site. This won’t be appropriate for all WooCommerce Amazon affiliates sites, but think about whether it works for yours.

Note: If you’re just comparing a couple of products, then there’s no need to worry about filters. This is because everything will be on one page regardless.

You’re now ready to enjoy your passive income

That wraps up our guide to earning Amazon affiliates commission – and that sweet passive income – by starting a WooCommerce product reviews website. We’ve shown you the step-by-step details (and a real life case study). So you’ve got all the information you need to make your website a success.

The most effective product review websites will continue to receive attention after launch, with new reviews and comparisons added. You don’t have to spend a lot of time on these. However, do spend some time on them in order to keep visitors and search engines happy.

If you’d prefer, we can take some of the pain out of dealing with search engines with our WordPress SEO packages. Take a look, and discover how we can promote your website for you.

We’ve also got some more tips to help you take your site to the next level. Read this next: Make your store more successful with our top 10 Tips for using product tables to increase your WooCommerce conversion rate optimisation.

Thanks for reading, and we hope we’ve helped set you on the way to enjoying passive income! Now over to you: do you already earn affiliate income by publishing product reviews and comparisons in WordPress and WooCommerce? Let us know your thoughts and experiences in the comments below :)

WooCommerce Min Max Quantity Plugin

Adding minimum and maximum quantity rules to WooCommerce ensures that every sale is both profitable and manageable for your online store. This article will introduce you to the best min max quantity WooCommerce plugin, and show you how to set it up in just a few minutes.

When you use WooCommerce as it comes, your customers can order as few - or as many - of each product as they like. There are no min or max quantity restrictions. This can cause several problems for your company, including:

  • Unprofitable orders - customers can place tiny orders that are not cost-effective to fulfil.
  • Products with low profit margins - some products are only profitable when ordered in larger quantities, otherwise you lose money.
  • Capacity issues - you risk receiving huge orders that are too big for your warehouse to manage.
  • Packaging difficulties - some products can only be packaged efficiently in certain quantity groupings, e.g. in packs of 4.
  • Lack of flexibility - you may have different operational processes for certain user groups, such as wholesale buyers. A one-size-fits-all quantity setting makes this difficult.

The WooCommerce Quantity Manager plugin solves all these problems and more. Unlike other min max quantity WooCommerce plugins, it's easy to use and 100% flexible. It gives you total control over the product quantities in your store, without slowing it down.

6 reasons why a WooCommerce minimum and maximum quantity plugin can increase profits

Before we start, let's look at why you might need a WooCommerce min max quantity plugin in the first place. I firmly believe that you should only install plugins that you have a genuine need for. Ask yourself: "Will this plugin make my store more profitable or easier to manage?" 

The best min max quantity WooCommerce plugin lets you answer "Yes" to both questions. Here are 6 reasons why it can increase your profits while making your store easier to manage:

Reason #1 - Use the woocommerce minimum order quantity to increase profits

Many WooCommerce orders are only profitable if they're over a certain minimum order quantity or minimum order value.

This is a big problem if you sell low value products and expect customers to order multiple items at once. For example, an online restaurant ordering system assumes that people will order an entire meal. If someone orders an individual drink or one small side salad then it's not worth preparing and packing their order.

A minimum order WooCommerce plugin lets you guarantee that every order is profitable. Simply set the minimum order quantity or value. Customers will be encouraged to continue adding to their order until they can check out at a level that is profitable for you.

Reason #2 - Set a WooCommerce minimum quantity per product to make every product profitable

At the same time, you might have certain products that are only profitable when ordered in bigger quantities. In this case, setting a minimum order quantity isn't much use because the issue relates to each product, rather than the overall order value.

Instead, you need a plugin that lets you set the WooCommerce product minimum quantity.

WooCommerce Quantity Manager lets you set a minimum quantity for categories, products or variations. This gives you more flexibility and saves you time. For example, if you have a hardware store with a 'Nails and screws' category then you can set a minimum quantity for this whole category, instead of having to edit each individual product.

Setting minimum quantities helps you make sure that every product is sold for a suitable profit margin.

Reason #3 - Use WooCommerce max quantity to manage capacity and keep your orders manageable

Every business loves to receive big orders, but there is a limit. Realistically, you can only handle orders that your team and warehouse have the capacity to manage. If you receive orders that you can't handle then you risk letting down customers and damaging your reputation.

Of course, WooCommerce itself has stock management features. These manage your inventory and make sure you only sell items that you actually have in stock. However, this only applies to one product at a time. Stock management won't prevent you from receiving unmanageably large orders.

The solution is to use a WooCommerce max quantity plugin such as Quantity Manager. Use it to set a max quantity for entire orders, orders from a specific category, or for each individual product or variation. Depending on your store's needs and capacity issues, you can set a maximum quantity or maximum order value.

This ensures that your store has the capacity to handle every order and won’t get overwhelmed. Your staff and customers will thank you for it!

Reason #4 - Use default quantities to increase your average order value

WooCommerce min and max quantity rules physically control the quantity that customers can order. You can also benefit from a more gentle approach.

The WooCommerce Quantity Manager plugin lets you change the default quantity which appears on the quantity field for each product. While this doesn't control what customers can buy, it's a powerful way to nudge them in the right direction.

The default quantity in WooCommerce itself is 1. Unconsciously, this suggests that it's normal to buy 1 of each product. But you want customers to buy more than 1!

Increase the default quantity or set it to zero. Either way, you're creating the impression that it's normal to buy larger quantities of your products. It's a great way of increasing the average order value in WooCommerce!

Reason #5 - Use WooCommerce quantity increments to improve operational efficiency

In WooCommerce itself, customers can select quantities in increments of 1. This means that they can order in quantities or 1, 2, 3, 4, and so on.

The Quantity Manager plugin lets you change the quantity step value to anything you like - either globally, or per product/category/variation. This works nicely alongside your WooCommerce min max quantity rules to make your warehousing, packaging and delivery more profitable.

For example, you might sell a certain type of product in pallets or boxes that can fit 4 products. If the customer orders a quantity that is not a multiple of 4 then you're paying to ship empty space. This reduces your profits, as well as increasing the carbon footprint. Instead, you can set the quantity increment to 4 and ensure that customers order in groupings of 4.

Quantity increments also help to increase profits if you have a custom manufacturing process and your order quantities need to fit with this.

Reason #6 - Set min and max quantity rules for certain user groups

So far, we've assumed that all your customers will have the same quantity requirements. That's not necessarily the case.

If you have a multi-purpose store that sells to different types of customers, then you might want to set WooCommerce min and max quantities for certain groups only. For example, if you have a B2B wholesale store (e.g. using the WooCommerce Wholesale Pro plugin) then you might want to set a WooCommerce minimum order quantity for wholesale buyers only. Wholesale users often have different terms, such as bulk shipping options, which aren't available to normal customers. As a result, it makes sense to set quantity minimums for them without affecting other customers.

You can easily do this with the WooCommerce Quantity Manager plugin. Just choose which user role(s) your minimum maximum quantity rules will apply to.

Why WooCommerce Quantity Manager is the best min max quantity WooCommerce plugin

WooCommerce Quantity Manager circle cropped.png

As you can see, setting minimum and maximum quantity rules can increase both profitability and efficiency. The next step is to choose which WooCommerce order quantity plugin to use.

We built WooCommerce Quantity Manager after struggling with other WooCommerce min max quantity plugins. The problems we found were:

  • Performance problems - particularly slowing down the cart page.
  • Unhelpful errors - some of the error messages were quite rude and abrupt, telling the customer that there is a problem without explaining what they need to change in order to check out.
  • Multiple errors showing at once - some plugins display multiple errors at once if a customer is breaking more than one quantity rule. These can fill up the page and look terrible unless the min max quantity plugin makes an effort to combine and rationalize them.
  • Confusing logic - A quantity plugin for WooCommerce needs to be written very carefully to achieve the right logic between the different levels of quantity rule. For example, global quantity rules should override category rules, which should override product and variation rules. Otherwise, things get confusing for the store owner and their customers.
  • Missing options - Most WooCommerce min/max quantity plugins focus on specific features only, so you're left with gaps in functionality. For example, a minimum order WooCommerce plugin might let you set the minimum order quantity and value, without offering product minimum quantities or features such as quantity increments and defaults. To get the full business benefits, you need a fully featured WooCommerce quantity plugin that controls all aspects of your product quantities.

We decided to build a plugin that solves all these problems. WooCommerce Quantity Manager was the result.

Which industries need minimum and maximum quantities?

Before we get to the setup tutorial, let's look at some specific industries that can benefit from WooCommerce min max quantities.

WooCommerce wholesale stores with bulk ordering

B2B sales are all about buying in bulk. After all, wholesale buyers are selling on your products to their own customers. As a result, it makes sense to set a WooCommerce minimum order quantity or minimum quantity per product. This ensures that your store is only used for bulk buying.

If you run a public store alongside a wholesale area, then the 'User Role' feature in the WooCommerce quantity plugin lets you add minimum rules for B2B users only.

If you only sell in bulk then quantity groupings can also be helpful. These lets you set large step values between quantity options. For example, customers might be able to purchase in groups of 5, 10, and so on.

Restaurants selling meal deals

WooCommerce Quantity Manager restaurant plugin
Selling meal deals with WooCommerce Restaurant Ordering and Quantity Manager

Lots of restaurants use our WooCommerce Restaurant Ordering plugin alongside Quantity Manager to sell meal deals.

They might create a fixed price menu 'product' and then add all the food options as products with the price set to 0.00. To build their meal deal, customers must order the correct number of items from each category. For example, a meal deal might contain up to 2 starters, 2 main courses and up to $15 worth of side dishes or desserts. You can easily add these min max quantity rules and values with the WooCommerce min max quantity plugin.

Even if your restaurant doesn't sell meal deals, it might still need a minimum order quantity. For instance, this is useful if you offer free delivery. Use a WooCommerce minimum quantity to ensure that all overs are expensive enough to justify the delivery cost.

Event tickets

WordPress events list case study
Selling events with WooCommerce Product Table and Quantity Manager

Event tickets often need to be sold in certain groupings based on the layout of the venue. You might also want to force people to buy at least 2 tickets at a time. This ensures that you fill each part of the venue, with no awkward empty seats.

For example, let's say that you're selling tickets to events. Create a different variation for each type of seat. Add quantity groupings to force customers to buy them in pairs, or to sell an entire row together.

You can also set the default ticket number to 0. This is much better for selling events than the usual default of 1. That's because customers can make a fresh choice of how many tickets to buy, instead of assuming that they will buy one at a time.

Selling WooCommerce products in pairs

If you are displaying prices of individual items which are only available in pairs, then quantity increments are the perfect solution. Examples of this might include 'Mummy and Daughter' t-shirts, sets of chairs, sets of drinks glasses or place mats.

Your products will appear to be better value if you display the price per item. However, if it's not possible to buy items individually then you need to set quantity groupings.

Product bundles

If you're selling 'build your own' product bundles, such as gift baskets, then it's important to add min max quantity rules to WooCommerce.

Let customers build a product bundle by selecting the correct number of items from each category. This might include custom gift baskets, cosmetics sets, food boxes, and so on.

For example, you might instruct customers to choose 1 item from the shampoo category, 1 from the conditioner category and 2 from the make-up category. Use WooCommerce minimum and maximum quantity rules to prevent mistakes.

Seasonal sales

When you run a sale, it's important to make sure that everyone can access the discounts. Otherwise, a small number of customers can buy all your discounted stock before anyone else gets a chance.

During sale periods, set a maximum order quantity in WooCommerce. This prevents abuse of the sale prices and ensure that lots of different customers can benefit from the price reduction. This is particularly important for major sales such as Black Friday.

In-demand products

For the same reasons, you can ensure that popular items are shared fairly between customers. Use a WooCommerce max quantity per product to limit the number of in-demand items that each customer can buy. This helps to keep more customers happy overall.

This is also useful for products with low stock levels, preventing just one customer from buying all the remaining stock.

Now you know how you can benefit from minimum and maximum quantities, and which plugin to use. The next step is to install it. I'll show you how in the next section.

Tutorial: How to add WooCommerce min and max quantities

Ok, now we've reached the tutorial section of this article. The min max quantity WooCommerce plugin is really easy to use, and you can start adding minimums and maximums in minutes.

The main thing to think about is where to add the quantity rules:

  • You can set them globally so that they apply to the entire order.
  • There are category-level quantity rules which force customers to buy a min or max number of products from specific categories.
  • It's also possible to add min/max quantities to individual WooCommerce products and variations.

To save yourself time, I recommend adding min and max quantity rules to WooCommerce at the highest possible level. That's because you only have to set global rules in one place, whereas product-level rules need configuring for every product.

With this in mind, follow the instructions below that are most relevant to your store. You don't need to add every type of minimum and maximum quantity rule. Just add the ones you need, and ignore the rest. For example, it's fine to set a minimum order quantity without adding a max quantity. The WooCommerce min/max quantity plugin will cleverly apply the correct rule to each product, without any conflicts.

Create a global WooCommerce minimum and maximum order quantity

WooCommerce Quantity Manager screenshot settings
  1. Install the WooCommerce Quantity Manager plugin on your WordPress website.
  2. In the WP admin, go to WooCommerce → Settings → Products → Quantity manager.
  3. Set whichever global quantity rules you require, ignoring the ones you don't need. The choices are:
    • WooCommerce minimum order quantity or order value.
    • WooCommerce max quantity or order value.
    • Quantity step value.
    • Default quantity.
    • You can also choose which user roles the min max quantity rules in your store will apply to.

Add category min max quantity rules to WooCommerce

WooCommerce Quantity Manager screenshot category rules

Do this if you want the quantity rules to be shared across all products in a specific category, instead of the entire order. For example, a restaurant creating meal deals should set min and max quantities or values for the starters category, the main courses category, and so on.

  1. If you haven't already done so, install WooCommerce Quantity Manager on your WP site.
  2. Go to WooCommerce → Products → Categories and click to add or edit a category.
  3. Add a WooCommerce minimum quantity and/or WooCommerce maximum quantity for the category. Or if you prefer, then you can set min and max spend limits for the category (e.g. spend between $20 and $50).
  4. You can also set quantity increments and step values for the category, although these are applied to each product individually instead of being shared across the category.

Now, if a customer adds at least one product from the category to their cart, then they must meet the category quantity rules. The cart page will contain helpful notes on any changes they need to make in order to meet the rules.

Add a WooCommerce minimum/maximum quantity per product

WooCommerce Quantity Manager screenshot simple product

As we saw earlier, you can also add min max quantities per product in your WooCommerce store. This means that the quantity rules will be applied to that product individually.

  • Make sure WooCommerce Quantity Manager is installed and active.
  • Go to WooCommerce → Products and click to edit the product that you are adding min/max quantities to.
  • Scroll down to the 'Product Data' section and open the 'Inventory' tab.
  • Add a WooCommerce minimum quantity per product, a maximum quantity, or a min/max value that the customer must spend when they buy this product.
  • As always, you can also set a quantity step value and default starting value.

Add min and max quantity rules to individual variations

The above instructions for adding min/max quantities to specific products work for simple or variable products. If you add product-level rules for variable products then they will be shared across all the variations for that product. For example, if there's a per-product minimum order quantity of 10 then customers can mix and match variations until there are at least 10 in the cart.

If you want to set min and max quantity rules on each variation individually, then you can do this. Instead of setting the rule in the 'Inventory' tab, go to the 'Variations' tab and click to edit each variation. You'll see min/max quantity fields for the variation here.

Using quantity minimums and maximums with other plugins

One of the best things about the Quantity Manager plugin is that it works with the native WooCommerce quantity field. It also uses native WooCommerce errors to advise customers how to meet the min/max quantity rules. This makes it compatible with a wide range of other plugins.

Here are some examples of how you can use it with other plugins to make your store even more profitable.

Create a one-page order form with quantity rules

WooCommerce min/max quantity product table

Our bestselling WooCommerce Product Table plugin lists products in a quick order form. Customers can quickly enter quantities, choose variations and add multiple products to the cart at once.

Use it with WooCommerce Quantity Manager to add min and max quantity rules to the order form.

Add quick view lightboxes with quantity controls

WooCommerce Quick View Pro Quantity Manager

Our WooCommerce Quick View plugin saves customers time by letting them choose quantities and add to the cart away from the single product page. When you use it with WooCommerce Quick View Pro, they are forced to select the correct quantities from within the quick view lightbox.

Start adding min/max quantities to WooCommerce today!

As you can see, nearly any online store can benefit from adding min and max quantities to WooCommerce. The WooCommerce Quantity Manager plugin has everything you need to add every type of quantity rule, so install it today.

  • Min/max quantities, values, step values, defaults and user role control.
  • Quantity rules for entire orders, or at category/product/variation level.
  • In-depth documentation and video tutorials.
  • Expert support direct from the Barn2 team.
  • Try it risk-free!

List WooCommerce Orders Front End

If you need to list WooCommerce orders on the front end of your website then you can do this with our Posts Table Pro plugin, a WordPress table plugin. It displays orders in a responsive table for front-end WooCommerce inventory management. This is the complete guide on how to display WooCommerce order list in the front end using Posts Table Pro.

What is Posts Table Pro?

Posts Table Pro is a popular WordPress table plugin developed and supported by us at Barn2. It lists any type of WordPress content in a structured HTML table. This includes pages, posts, custom post types, and - you guessed it! - WooCommerce order lists!

The WooCommerce plugin is very flexible and comes with dozens of options. You can choose which columns of order data to include in the table, how the table is sorted, and much more.

Please note that we have another plugin called WooCommerce Product Table. This lists normal WooCommerce products in a table. Surprisingly, this is NOT the right plugin to list WooCommerce orders in the front end. WooCommerce orders aren't products - they're separate custom post types. This means that you need to list them using our Posts Table Pro plugin.

In this tutorial, I'm going to tell you how to list all WooCommerce orders in the front end, and how to show orders for a specific customer only.

Let's get started!

How to list WooCommerce orders in a table on the front end

Step 1. Create the table of orders

List WooCommerce Orders Plugin

Follow these steps to create an instant table listing WooCommerce orders:

  1. First, get the Posts Table Pro plugin.
  2. Upon installing the plugin, you will be prompted with an automatic setup wizard to help you create your first table.
  3. You'll first need to provide a name for it and select the post type that you want to display. In this example, we'll choose "Shop orders" as our custom post type. Next, you can choose the posts or product pages you wish to include in the table. You can select from a range of options, including posts, pages, and custom post types.
  4. Once you've selected your content, you can customize your table's appearance by selecting which columns to display and in what order. To add a new column, simply choose the column type from the dropdown menu and click "Add."
  5. You can also customize the sorting options for your table by selecting the default sorting option and the sort direction you prefer. This gives you complete control over the order number in which the WooCommerce orders are listed.
  6. When you've finished, go to Post Tables → Settings, find the "Links" option, and type "none" into it. This stops the orders in the table from being clickable, which is essential because WooCommerce doesn't provide an individual WooCommerce view order page for each order that you can link to in this way. (We'll discuss this a bit more in a minute.)

Essential columns to Include in your WooCommerce order list with Posts Table Pro:

    • ID - rename this column to "Order ID".
    • Date
    • Shipping first name - Add this as a custom field column, enter _shipping_first_name as the custom field name, and rename the column to "First Name".
    • Shipping last name - Add this as a custom field column, enter _shipping_last_name as the custom field name, and rename the column to "Last Name".
    • Shipping address 1 - Add this as a custom field column, enter _shipping_address_1 as the custom field name, and rename the column to "Address 1".
    • Shipping city - Add this as a custom field column, enter _shipping_city as the custom field name, and rename the column to "City".
    • Postcode - Add this as a custom field column, enter _shipping_postcode as the custom field name, and rename the column to "Postcode".
    • Phone - Add this as a custom field column, enter _shipping_postcode as the custom field name, and rename the column to "Phone".
    • Total - Add this as a custom field column, enter cf:_order_total as the custom field name, and rename the column to something like "Total ($)".

Step 2. Ensure Posts Table Pro can display your WooCommerce orders

Next, you need to make sure the WooCommerce orders are stored in a way that Posts Table Pro can access. This step is only needed on new websites which were first created with WooCommerce 8.2 or later because of the way that data about orders is now stored. If you have an older site then you can ignore this step because your WooCommerce orders will be stored in both the old and new locations.

If you have a newer site, then you should go to WooCommerce → Settings → Advanced → Features and tick the 'Enable compatibility mode' box.

Please note that this may have an impact on performance because it is forcing WooCommerce to use an older method for data storage. As a result, you should test it carefully. However, this is currently the only way to display WooCommerce orders using Posts Table Pro. We hope to update the plugin to remove this step in the future.

WooCommerce compatibility mode HBOS

What else can I list in the table of WooCommerce orders?

I've included some sample columns in the instructions above, but you don't have to use these. There are lots of possible columns that you can include in the list of WooCommerce orders. Feel free to add whichever you need on the Columns page of the table builder.

Order status

To include this in the WooCommerce order list, add a "status" column.

Order meta fields

In addition, you can add columns in the table for any of the custom fields associated with WooCommerce orders. These are stored in the wp_postmeta database table and here's a list of them all. For each of these, create a custom field column and enter the custom field name shown below:

  • Customer IP address - _customer_ip_address
  • Customer's browser and operating system - _customer_user_agent
  • How the order was created (this will normally say 'checkout' - _created_via
  • Billing details:
    • Complete billing information (lists the name, address etc. in a single column of the table) - _billing_address_index
    • Billing first name - _billing_first_name
    • Billing last name - _billing_last_name
    • Billing company name - _billing_company
    • Billing email address - _billing_email
    • Billing phone number - _billing_phone
    • Billing country - _billing_country
    • Billing address line 1 - _billing_address_1
    • Billing address line 2 - _billing_address_2
    • Billing city - _billing_city
    • Billing state - _billing_state
    • Billing postcode - _billing_postcode
  • Shipping details (if different from billing details):
    • Complete shipping information (lists the name, address etc. in a single column of the table) - _shipping_address_index
    • Shipping first name - _shipping_first_name
    • Shipping last name - _shipping_last_name
    • Shipping company name - _shipping_company
    • Shipping country - _shipping_country
    • Shipping address line 1 - _shipping_address_1
    • Shipping address line 2 - _shipping_address_1
    • Shipping city - _shipping_city
    • Shipping state - _shipping_state
    • Shipping postcode - _shipping_postcode
  • Order payment data:
    • Currency - _order_currency
    • Do prices include tax? - _prices_include_tax
    • Payment method code - _payment_method
    • Payment method name - _payment_method_title
    • Total order cost - _order_total
    • Shipping cost - _order_shipping
    • Total discount - _cart_discount
    • Payment date - _date_paid
    • Payment date (user-friendly format) - c_paid_date
  • Tax information:
    • Total tax - _order_tax
    • Shipping tax - _order_shipping_tax
    • Tax discount - _cart_discount_tax
  • Transaction ID (e.g. if you're using PayPal) - _transaction_id
  • Order status data:
    • Date the order was marked as complete - _date_completed
    • Date the order was marked as complete (user-friendly format) - _completed_date

Note: This will also be useful if you're looking for a list of database fields for WooCommerce get all orders list. I couldn't find a list of these fields anywhere else online, so I went through the WordPress database and figured it out myself.

List WooCommerce orders based on their status

In the previous section, I showed you how to list all orders regardless of status. If you prefer, you can set the table to display orders with a specific status only.

To do this, you need to set the status option in the Posts Table Pro for WooCommerce order history shortcode which you use to insert the WooCommerce order table onto your site's backend.

The available options are:

  • Completed orders - wc-completed
  • Orders pending payment - wc-pending
  • Payment processing - wc-processing
  • On hold orders - wc-on-hold
  • Cancelled orders - wc-cancelled
  • Refunded orders - wc-refunded
  • Failed payment - wc-failed

For example:

[posts_table_template="1" status="wc-completed" links="none"]

Other options to customize your list of WooCommerce orders

As I mentioned earlier, Posts Table Pro comes with dozens of options for customizing the display of your orders for WooCommerce inventory management. As well as choosing your columns, you can control the default sort order, show or hide elements such as the search box, product category page, and much more.

You may have noticed that I customized some of the column names in the example WooCommerce order history shortcode above. Here's a direct link to how you can do this yourself, for any of the WooCommerce order table columns.

You can read about all the options in the plugin knowledge base.

In the instructions above, I asked you to disable the links to the individual orders. That's because, by default, Posts Table Pro will add a broken link to the Order ID column. The reason the link is broken is that it's pointing to a front-end WooCommerce view order page, which doesn't exist. As a result, I have shown you how to disable all links in the WooCommerce order table.

If you really wanted to link the ID column to the 'Edit Order' page in the WordPress admin, then you could write some custom code to achieve this. If you don't know how to do this, then I recommend posting a job on Codeable to find a suitable WordPress expert.

Can I list the products for each order?

Unfortunately not, because WooCommerce doesn't store this in the WordPress database in a way that Posts Table Pro can display. You will need to view the individual order in the WordPress admin to access the list of new products.

Here's a quick tip on the fastest way to do this:

  1. Copy the Order ID from the list of WooCommerce orders.
  2. Go to [your-domain]/wp-admin/post.php?post=12345&action=edit - replacing 12345 with the Order ID that you wish to look up.

This will take you straight to the Edit Order screen, which includes a list of products ordered.

Don't forget customer confidentiality!

List WooCommerce orders securelyThe reason WooCommerce doesn't come with a built-in option to display orders in the front end is that this information is normally confidential.

However, there are some situations where it's appropriate to list WooCommerce orders on the front end.

For example, you might want to create a hidden WooCommerce view order page for delivery drivers to see, without giving them access to the WordPress admin. You might want to do the same for your administrative or finance staff. This is where the plugin comes in useful for front-end WooCommerce inventory management.

Whatever your reason for displaying WooCommerce get all orders lists in the front end, make sure you add the appropriate security measures to protect customer data.

As a minimum, this should include using an SSL certificate and hiding the list of orders on a password-protected page or other hidden areas. Your list of WooCommerce order data should only be available to people who really need access to it.

Can customers see a front-end list of their own orders?

Yes, and you don't need any extra plugins to do this. The Woo 'My Account' page already includes a list of orders, so customers just need to log in and view their past custom orders. There's also a shortcode for this, which you can add products anywhere customers are logged into their account: [my_orders]

But if you want to list all customize WooCommerce orders in the front end, then you'll need Posts Table Pro for this.

Can customers see a list of their own orders?

So far, I've shown how WooCommerce get all orders list in the WordPress front end for WooCommerce inventory management. But what if you want to show orders for the current user only? For example, if you're running a multi-vendor site then you might want each vendor to view a table or report of their own orders.

Unfortunately, this is a bit tricky because WooCommerce doesn't store the customer details as a taxonomy on the 'shop_order' post type that you can use to control which orders to include in the table. As a result, you need to create a new way to store this information so that Posts Table Pro knows which orders relate to the current customer.

Here are two suggested workarounds. The first is aimed at non-technical users and requires a bit of manual work. The second is for developers and is more automated.

Option 1 - Create a hidden page for each customer listing their orders

  1. Add a hidden page for each customer and password protect it.
  2. Create a custom taxonomy called 'Customer' or similar, and use it to tag each order with the correct customer's username or ID.
  3. Use Posts Table Pro for WooCommerce get all orders list on the page. On the page of the table builder where you choose which posts to include, select "Custom taxonomy" and select the term that you're using for the individual customer. For example, if you have tagged a user's orders with "user1" then you should select this.
  4. Send the customer a link to their page, along with the password.
  5. Repeat steps 1-4 for all the customers who need to see their own orders in the WP front end.

Option 2 - Automated solution

For a more automated solution with less manual work, here's an alternative method for you (or your developer):

  1. Create a custom taxonomy on the 'shop_order' post type, and code it to automatically populate with the username of the person who placed the order.
  2. Modify the template for the WooCommerce Account page to replace the default list of orders with a Posts Table Pro for WooCommerce order history shortcode.
  3. Replace "customer" in the shortcode with the slug of the taxonomy you created in step 1 a minute ago.
  4. Instead of "user1", you need to dynamically populate this part of the shortcode with the customer's username (which you are storing as a taxonomy term, as described in step 1).

Once you have done this, the WooCommerce Account page will include a table listing orders for the current user.

Displaying WooCommerce orders on your website: Developer and non-developer options

If you're a developer looking to use WooCommerce get all orders programmatically, you can use the wc_get_orders() function. This function returns an array of order objects that you can loop through to display the relevant order information on your front end.

However, it's important to note that this method requires some programming knowledge and may not be suitable for non-developers. If you're not comfortable with writing code, it's recommended to use a plugin such as Posts Table Pro to display your WooCommerce get all orders programmatically on the front end of your WordPress website.

With Posts Table Pro, you can easily create a table of your WooCommerce orders with sorting and filtering options without any coding skills. Simply install and activate the plugin, and then use the [posts_table] shortcode to display the orders on any post or checkout page.

To customize the table, you can use the plugin's built-in settings to choose which columns to display, set up filters, and more. This is a great option for non-developers who want to display their WooCommerce get all orders programmatically on the front end of their ecommerce website without having to write and reorder any code.

Over to you!

By now, as a store owner have all the information you need to list WooCommerce orders for front-end WooCommerce inventory management.  Get the WordPress table plugin, Posts Table Pro, and set it up today!

I'd love to hear how you use lists of WooCommerce orders on the front end of your shop page. What information do you include? What do you use it for? How have you made sure your customer data is safe? Please leave your comments below.

WooCommerce Age Restriction Plugin

A WooCommerce age verification plugin prevents underage people from buying age restricted products on your website. You'll need one if you're selling items such as tobacco, alcohol, 18+ competitions, or adult products. It works by asking customers to verify their age before they can view or buy age restricted products from your WooCommerce store.

In this tutorial, I'll introduce you to 2 popular WooCommerce age verification plugins.

One of these plugins restricts your entire WooCommerce store so that people can only access it after verifying their age. The other plugin lets you restrict specific product categories only, while leaving your other products available to all age groups.

Both plugins will leave your homepage and other main pages (About, Contact, etc.) public. They only provide age verification for your age restricted products. You don't have to lock down your whole website. This lets you create public areas of your website, build your SEO, and get a good search engine ranking (which wouldn't be possible if your whole website was age-restricted. Google's crawlers can't get past age verification!).

I'll provide advice on which WooCommerce age verification plugin best meets your needs. Then I'll show you how to set them up, using a choice of 3 methods. Let's get started!

Age restriction is a tricky issue in e-commerce because the customer isn't physically present for you to verify their age. Lots of countries simply require website owners to ask customers to confirm their age before allowing them to purchase. WooCommerce age verification plugins work on this basis. It's the customer's responsibility to verify their correct age.

Before we start, I recommend that you check the law for your own country to make sure this is acceptable. If not, then you might need a more comprehensive approach. For example, in extreme circumstances, you might need each customer to provide proof of identify before you will ship age restricted products to them. Method 2 covers a WooCommerce age restriction plugin that can do this, but it does mean more work for you. Fortunately, this isn't normally needed - but you should always check.

Introducing 2 WooCommerce age verification plugins

You should choose an age verification plugin for WooCommerce based on exactly what you need to restrict:

  1. Method 1 - WooCommerce Private Store with online age verification This simple plugin locks down ALL your WooCommerce content while leaving the rest of your website public. Customers can view your homepage and other main pages, but must verify their age in order to view and buy any products. Use this plugin to add a global age gate which will restrict ALL your products.
  2. Method 2 - WooCommerce Private Store with individual user accounts Perhaps you still want to age restrict your entire store, but need to manually confirm each user's age before they can start shopping. You can do this by using the WooCommerce Private Store age verification plugin to hide your products from public view, and manually creating individual user accounts for each customer. Logging into their user account will unlock the age restricted store.
  3. Method 3 - WooCommerce Protected Categories This WordPress plugin is perfect for age restricting specific groups of products within a WooCommerce store, while leaving other products available to everyone. Use it if you only want to restrict some of your products, while leaving others available for all ages.

How do the age verification plugins work?

Methods 1 and 3 are very simple, in that they both password protect parts (or all) of your store. To use them as WooCommerce age verification plugins, you need to set a password for each age that the products are available to. Whenever someone enters their age in the box, the plugin recognises it as a valid password. This tells the plugin that their age is validated and they can view and buy the products within the restricted area.

Method 2 is slightly different because it unlocks the age restricted store for logged in users, while hiding your products from guests.

Next, I'll provide detailed instructions on how to set up each plugin to age restrict your products.

Method 1: How to use WooCommerce Private Store to age restrict your entire shop

This is how to use the WooCommerce Private Store plugin to lock down your entire WooCommerce store. Customers must enter a valid age to unlock the age restricted store.

Setup instructions

  1. First, buy WooCommerce Private Store. Download the plugin and upload it to your site (Plugins > Add New).
  2. Go to WooCommerce > Settings > Private Store and change these settings:
    • License Key - Enter your license key.
    • Store Passwords - Add a password for each age that can access the age restricted WooCommerce store. For example, if your store is restricted to people aged 18+, then you need a password for each age over 18. So, you would have a password called 18, one called 19, one called 20, and so on. (I realise this is quite a few passwords, but it only takes a second to add each one, so it won't take you long to create them all.) When someone enters a valid age on the WooCommerce age verification page, the plugin will unlock the store if their age matches one of these passwords.
      WooCommerce age restricted store plugin
    • Password Expires After - Add a whole number here to specify the number of days that people can continue accessing the store from their browser until they have to re-validate their age. I recommend adding '1' here for added security.
    • Login Redirect URL - Normally, a customer will be redirected to whichever page they were trying to access when they had to verify their age. If you prefer, you can enter a specific URL here that they will always be redirected to after validating their age. (E.g. this might be main WooCommerce shop page.)
    • Login Form - Finally, you'll see settings for customising the page that people will use to validate their age. In the 'Form Message' field, I recommend adding something self-explanatory that will help people to validate their age. For example, it's helpful to state the format in which people need to enter their name.
    • Save your changes.

Now add an age validation page

  1. In 2 simple steps, you have already age restricted your WooCommerce store so that only people with the correct ages can access it. The final step is to provide a way for them to enter their age and unlock the store. To do this, create a page and add the shortcode [store_login]. This will create an age verification form, with the text you added on the settings page. Add it to your menu or provide other user-friendly ways for people to find it.
WooCommerce age restricted store plugin

For more information, see the plugin knowledge base.

Note: This applies to your entire shop. If you want to sell some age restricted products and some products that are available to everyone, then you need WooCommerce Password Protected Categories instead. (See next section.)

Method 2: How to use WooCommerce Private Store with individual user accounts

Method 2 is identical to method 1 and uses the same WooCommerce age verification plugin. However, it's more secure because instead of trusting users to enter their own age, you would vet each customer manually and then create a user account for them.

With this method, you'll be using the WooCommerce Private Store plugin in a different way. Each customer must log into their individual user account on your website. This will automatically unlock all the age restricted WooCommerce content (i.e. your main Shop page, products, categories, etc.).

3 simple steps to create an age restricted store

  1. First, get WooCommerce Private Store. Download the plugin from the link in your confirmation email. Upload it to your website (Plugins > Add New).
  2. Go to WooCommerce > Settings > Private Store and change the following settings:
    • License Key - Enter the license key from your confirmation email. (The plugin only works with a validated license key.)
    • Logged In Users - Tick this box. This means that instead of having a separate password for your age restricted WooCommerce store, the store is unlocked whenever someone logs into their user account. An option appears underneath to choose which user roles will have access.
  3. Finally, create a login page. This should allow customers to log into their main WordPress user account. Either link directly to the main WordPress login page (yourdomain.com/login.php). Or - for a more professional result - create a front end login form using a plugin such as Theme My Login.

And that's it! Your main homepage and other standard WordPress pages will remain public and can appear in search engines etc. All your WooCommerce store content will be hidden from guests, and will immediately appear for logged in users.

Can customers create their own accounts?

Plugins such as Theme My Login add customizable registration forms as well as login forms. Theme My Login also has an option to hold new user registrations for moderation, so that they can only access your hidden store after you've manually validated their age.

If you're not using Theme My Login, then you can add this as a standalone feature with the New User Approve plugin.

Method 3: How to use WooCommerce Password Protected Categories to create an age restricted area within your store

Unlike methods 1 and 2, this WooCommerce age verification plugin lets you create an age restricted area within WooCommerce, while leaving the other parts of your store public. It works by creating one or more private product categories, which can only be viewed after the customer enters a valid age.

First, setup the WooCommerce age verification plugin

  1. Buy WooCommerce Protected Categories and install the plugin on your WooCommerce website.
  2. Go to the plugin settings page: WooCommerce > Settings > Products > Protected Categories. Change the following settings:
    • License Key - Enter your license key so that the plugin will work.
    • Category Visibility - You would normally leave both these boxes unticked for WooCommerce age restricted products. However, it's ok to tick them if you want the age restricted products to appear in the public areas of your site. If you do this, then when someone clicks on one, they will be asked to verify their age before they can add to cart or access the single product page.
    • Password Expires After - Add a whole number to set the number of days that each person can continue accessing the age restricted store before having to re-validate their age. I recommend adding '1' here for extra security.
    • Client Login Page (optional) - If you like, you can select a page here which will automatically contain an age verification form form. This is optional because you can link directly to your age restricted category page or products, and people will also see the age validation form there.
    • Password Form - This section customises the login page where people enter their age to unlock the protected products. Adapt the Form Heading, Form Heading, Password Label and Button Text to an age verification form. (See the below screenshot for an example).

Now create a WooCommerce age verification category

  1. Next, go to Products > Categories and either create a new category, or edit an existing one. You'll see a 'Visibility' section with a 'Password protected' option. Tick this.
  2. Instead of just adding 1 password, add lots of passwords - one for each age over 18. So, you would have a password called 18, one called 19, one called 20, and so on. As with method 1, I realise this is quite a lot of passwords. However, it only takes you a second to add each one, you can create them all within a couple of minutes.
    WooCommerce age verification plugin
  3. Finally, you need to add links to your age restricted products. If you selected a Login Page on the plugin settings page, then you can link to this from your menu etc. You can also link directly to the age restricted category, if you have ticked the appropriate box on the settings page. Either way, customers will have to verify their age before they can view and buy the restricted products.

What about navigation for my age restricted store?

If parts or all of your WooCommerce store are hidden from underage visitors, then the navigation needs to reflect this. For example, you might want to include menu links to all your product categories once people have verified their age, while hiding these links from everyone else.

Happily, both the WooCommerce Private Store and WooCommerce Protected Categories plugins will automatically do this for you. If you add links to WooCommerce content to your main navigation menu, then these will only be visible to people who have verified their age. You don't have to bother creating different menus for different types of user, as the dynamic links happen automatically.

How to display products to everyone, but require age verification to purchase

Finally, I'll give you a tip that lots of age restricted WooCommerce stores have asked us about.

If you want everyone to be able to browse your store, but only people over 18 or 21 can make a purchase, then you need to use WooCommerce Protected Categories (i.e. method 3 of this tutorial). When you set it up, tick the 'Category visibility' boxes on the plugin settings page:

WooCommerce Protected Categories Visibility Settings

When you do this, your age restricted products will appear on the main WooCommerce shop page, search results and widgets. When someone clicks on a product, they must login or enter the password (depending on how you've chosen to set up the age restriction) before they can access the single product page or add to cart.

You can use WooCommerce Protected Categories to make your entire store private, as well as hiding specific categories only. To put all your products behind the age gate, simply put them all in age restricted categories.

Which WooCommerce age verification plugin will you use?

In this tutorial, I've taught you how to set up 2 WooCommerce age verification plugins, using 3 different methods. These are designed to suit different types of WooCommerce store, so I hope you find one that works for you.

I'd love to hear how you get on with your age restricted WooCommerce store. Please add your comments below!

WooCommerce Zipcode Based Pricing Plugin

A customer recently told me that there are no WooCommerce location based pricing plugins. I didn't believe this, so I had a look - and I couldn't find one either!

I'm writing this step-by-step tutorial to show you how to set up WooCommerce zipcode based pricing using the WooCommerce Protected Categories plugin. You can use it to charge different prices depending on the customer's zip code, postcode, area, location, region, or country. And it only takes a few minutes to set up!

Importance of location based pricing in ecommerce

There are lots of reasons why location based pricing can be useful on an ecommerce platform:

  • Firstly, it allows you to customize your pricing strategies based on specific market conditions and consumer behavior in different geographical locations. By considering factors such as local competition, purchasing power, and demand patterns, you can optimize your pricing to remain competitive and maximize profits.
  • Secondly, location based pricing enables you to offer personalized pricing to customers, taking into account their specific location. This approach allows you to provide targeted discounts, coupons, or promotions to customers in certain regions, increasing customer satisfaction and loyalty.
  • Furthermore, location based pricing can help you effectively manage shipping rates and logistics costs. By adjusting the process based on the proximity of the customer's location to the warehouse or distribution center, store owners can ensure that the shipping costs are reasonable and aligned with the customer's location.

Examples of industries that can benefit from location based pricing

Several industries can benefit from implementing WooCommerce location based pricing strategies. Here are some examples:

  1. Ecommerce store and retail: Online retailers can use location based pricing to account for variations in shipping costs. local competition, and customer preferences. By adjusting prices based on different zones, a postcode WooCommerce plugin lets them remain competitive while keeping each area profitable.
  2. Travel and hospitality: Hotels, airlines, and travel agencies can implement WooCommerce location based pricing to reflect regional demand, seasonal fluctuations, and local competition. Pricing can be adjusted based on popular travel destinations, high-demand areas, or specific tourist seasons.
  3. Food delivery services: WooCommerce location based pricing can be beneficial for food delivery platforms and services. Pricing can be adjusted based on the delivery distance, traffic conditions, and availability of local restaurants and food suppliers. This allows for accurate cost calculations and fair pricing for customers.
  4. Insurance: Insurance companies can use WooCommerce location based pricing to account for different risk factors associated with specific locations. Factors such as crime rates, weather patterns, and accident statistics can be considered when determining insurance premiums for different postcode WooCommerce prices.
  5. Subscription services: Companies offering subscription-based, such as streaming platforms or software providers, can implement WooCommerce location based pricing to adjust flat rate prices based on regional demand and market conditions. This approach allows them to optimize revenue and cater to specific customer segments.

Why use a WooCommerce zip code based pricing plugin?

In an ideal world, everyone would pay the same amount regardless of where they live. However, there are situations where you might want to change your product pricing based on the customer's zip code or location.

Here are some reasons why you might need location-based pricing:

  • If you offer free shipping, then your profitability will vary depending on the customer's location. There's no way to avoid this because shipping companies often charge different rates depending on the customer's zip code, area, or country. The easy solution is to set up WooCommerce shipping zones to charge zip code-based shipping and keep your product prices consistent for all customers. However, if free shipping costs are a big selling point for your WooCommerce site, then you could keep this while charging higher specific product prices for customers in more remote locations.
  • If your website sells worldwide then it's important to be aware that accepting payments from customers in different currencies may lead to higher fees for your business. A WooCommerce price based on country plugin can help with this.
  • There may be higher legal or administrative fees relating to selling in certain places. You might try to recoup some of this by charging higher prices to those customers. For example, different WooCommerce zip code validation may have different tax rules or legal requirements which make it harder to sell to that area.
  • If you provide local services then your prices may differ based on each customer's zip code area.
  • Perhaps you want to reward locals with lower pricing depending on their zip code.

If this sounds like you, then you may be able to increase profitability with WooCommerce location based pricing. Continue reading to find a step-by-step guide on how to set up a price by country WooCommerce plugin.

What is WooCommerce Protected Categories?

WooCommerce Protected Categories is a WordPress plugin developed by us at Barn2 Media. It restricts access to certain product types in your WooCommerce store so that only people with the password can see and buy them.

I'll talk you through how to achieve zip code based pricing in WooCommerce. You can also change product prices depending on postcode, zone regions, location, country - whatever you like.

In a nutshell, the plugin lets you create a separate product category for each of your price bands. Each category is password protected using one or more zip codes or area names. The customer visits a central login page and enters their area or zip code as the password. This unlocks the category for their area and instantly directs them to the products with the correct pricing. Each product page will then show the right prices.

Each password protected category will contain a different version of your products, with the correct pricing for that zip code area, region, or price by country WooCommerce .

Customers will only be able to see the pricing for their own zip code area (i.e. category).

How to set up WooCommerce zipcode based pricing

Setting up WooCommerce location based pricing gives you the flexibility to customizable product prices based on specific zip codes, countries, etc. Installing the WooCommerce Protected Categories plugin is a straightforward process. Let's dive into the installation and basic setup. You can do all this in the WordPress backend.

Installation and activation process

  1. Get the plugin, and you will receive a confirmation email containing your license key and a download link to the plugin. If you don't find the email, please check your spam folder or contact support for assistance.
  2. Download the plugin by clicking on the provided link. In your WordPress dashboard, navigate to Plugins → Add New → Upload plugin. Choose the downloaded file and click on "Activate". Note that you need to have the WooCommerce plugin already installed for the WooCommerce Protected Categories plugin to work seamlessly.
  3. Enter your license key. You can find your license key in the email confirmation that was sent to you after purchase. The plugin will not work until you activate your license key. There are two ways to enter your license key: In the setup wizard - Once activated, the setup wizard will open. This walks you through each step of the setup process, including entering your license key. On the WooCommerce settings page - Alternatively, you can go to WooCommerce → Settings → Products → Protected Categories and enter your license key.
  4. Finally, save changes.

Configuring the WooCommerce location based plugin

  1. On the plugin settings page, choose the text that will appear above and on the category login form. For example, you will want to replace 'Enter your password' with 'Enter your zip code' or similar.
  2. Create a separate WooCommerce product category for each area that requires its own pricing. For example, you might sell products to 15 local zip codes based on 3 price bands. You would put the 5 zip codes for Band 1 in one category, the 5 zip codes for Band 2 in a second category, and so on.
  3. Password protect each category using the option in the 'Visibility' settings on the add/edit category page. Create a password using each area or zip code that you want to restrict the category to. For example, if you want customers in zip codes 123456 and 987654 to be able to access the category, then create 2 passwords: 123456 and 987654.
  4. Next, create a separate version of each product - one for each of the categories you just created. (Note: You can't put the same product in more than 1 password protected category. To get around this, the Duplicate Post plugin provides one-click cloning of WooCommerce products. If you're cloning products and want to manage inventory across the retail and wholesale versions of each product then we recommend the Group Stock Manager plugin. This lets you share stock levels across multiple products.)
  5. Put each product in the correct category.
  6. Change the pricing of each product as required.
  7. Create a category login page by adding the following shortcode wherever you want people to log in to the category for their zipcode or area: [category_login].

When customers enter the password (i.e. their zipcode or area) into the category login form, they will automatically be directed to a hidden category containing the products with their local pricing.

But I want the public to be able to see my products!

When you use a price by country WooCommerce plugin, the products will be hidden from the public parts of your website so that only customers with the password can view them. However, you don't have to protect all your products using this functionality.

Perhaps you want to list each product on your front end public site but also want a hidden version of each product for people from different zip code areas. You can achieve this by creating one or more public categories, which will not be password protected. These will appear in the public parts of your online store in the usual way.

The pricing of your public products will NOT change depending on the customer's location. The same price will appear for everyone. This means that you need to either show a standard cost that will always be visible in the public part of your site.

If this isn't appropriate for your site, then you can list the public products without prices. WooCommerce will automatically disable the checkout buttons for these products. People can view them but not buy them online. Customers will have to request the password to view pricing and buy.

How can customers request the password for their zip code?

There are various options for how you can give each customer the password for their zip code. This will depend on how private you want your area-based pricing to be, and whether you have regular or one-off customers:

  • If your pricing is not confidential then you could list all the passwords publicly, above the category login form. Customers simply need to find the password relating to their zipcode area and enter it to see their pricing.
  • You could use a WP contact form plugin such as Contact Form 7 to let customers request the password. This is a more secure option, as you can ensure that each customer can only access the prices for their own local WooCommerce zip code validation.
  • If you have a members-only WooCommerce shop or WooCommerce wholesale store, then you might only sell to pre-approved customers. If this is the case, then you can give them the password directly.

Location-based shipping methods

After setting up location-based pricing for your WooCommerce products, it's important to make sure that shipping will always be profitable for you regardless of the customer's location. Fortunately, you can easily do this using the built-in WooCommerce shipping methods.

WooCommerce lets you create an unlimited number of shipping zones and shipping classes. You can create different zones per continent or country, or make it fine-grained and charge different shipping based on city, zipcode, etc. Choose which areas get free shipping, local pickup, and which areas you won't ship to at all.

You can add one or more shipping options for each shipping zone. For example, each zone might have a free shipping option with a different minimum order amount to quality; flat rate shipping with a different cost, and so on.

To get full setup instructions, check out our complete guide to WooCommerce shipping. This covers how to add shipping zone or zones to your store, and how to add shipping methods. You can add a zone name for each one, and set multiple pricing options.

Let customers enter their location on the product page

Normally, WooCommerce stores only let customers enter locations on the cart page or single product page. That's no use - customers need to enter their location before deciding whether to buy a product!

It's much better to use the WooCommerce Product Page Shipping Calculator plugin to let customers enter their shipping location and view costs directly on the product page. That way, they can easily see if you will ship to their location and what it will cost. This is much more user-friendly and avoids disappointment while improving your conversion rates. After all, there's nothing worse than getting abandoned carts when customers get put off by seeing the shipping cost too late in the process!

Location-based payment gateways

The WooCommerce location-based pricing plugin described above will work with any WooCommerce-compatible payment gateway. However, you may need an extra plugin if you want to offer different payment options based on the customer's location. For example, maybe you offer PayPal as an option in some countries but not others.

For this, I recommend the Conditional Shipping and Payments plugin from woocommerce.com. This gives you full control over which customers see each shipping and payment option. You can Show different payment gateways based on the customer's billing country, shipping method, country, state or postcode.

Best practices for WooCommerce location based pricing

To effectively implement WooCommerce location based pricing, start by conducting thorough market research. Understand how prices vary in different areas by analyzing factors such as income levels, competition, and customer preferences. This research will help you segment your customers based on WooCommerce postcode and identify patterns in their behavior and purchasing power. By understanding these dynamics, you can develop a comprehensive pricing strategy that caters to the specific needs of each segment.

Use product data analytics to analyze historical sales data and identify trends across different postcode WooCommerce. This will enable you to adjust your prices dynamically based on real-time market conditions.

By implementing dynamic pricing, you can respond to changes in demand and stay competitive in the market. Keep a close eye on your competitors' pricing strategies to ensure your prices remain attractive while offering unique value-added features or services that differentiate your offerings.

It's time to add location pricing to your store!

WooCommerce Protected Categories provides a unique way to offer location-based pricing. Simply install the plugin and create a separate product category for each location, each with its own pricing.

I was really interested to hear that a customer was using it as a WooCommerce zip code based pricing plugin and thought that others might like to do the same.Please leave your comments below!

WordPress plugin MailChimp blog posts email

Allowing people to receive your latest WordPress blog posts by email is a great way to build a following. Forget about RSS, Twitter etc. Some people just like to read the latest articles from your website using good old-fashioned email.

Today, I'm going to share 2 easy ways to send WordPress blog posts by email:

  1. Use the MailOptin WordPress plugin
  2. Use MailChimp (no plugins needed!)

You'll learn how to email new blog posts to subscribers - either globally or specific categories only. I'll also share some handy tips on how to take your blog posts by email to a new level. For example, I'll tell you how to create a private members-only blog and email it to approved members only.

Let's get started.

Should I use MailChimp to send new blog posts?

First, let's talk through the different ways to send new blog posts via email.

WordPress plugins

There are several plugins which allow you to send 'new post' emails directly from your WordPress website - JetPack Subscriptions and Subscribe2 being some of the main players:

  • JetPack Subscriptions can't be branded and allows your visitors to subscribe to your sites and other WordPress blogs under a single account. This may not be appropriate for a corporate blog.
  • Subscribe2 requires a lot of custom development to look professional. The 'Manage My Subscriptions' page is in the WordPress admin rather than on the front end of your website. This isn't appropriate for most websites.

Another problem with sending bulk emails directly from your WordPress website is that your emails are more likely to be spammed. You can add features such as SMTP mail to increase email deliverability. However, WordPress is not a specialist email platform.

Some WordPress hosting companies such as WP Engine or Kinsta (our recommended host) don’t even allow you to send mass emails directly from your website. This is because it uses a lot of server resources and can slow down your website.

If you want a WordPress plugin to do this for you, then I recommend using MailOptin with MailChimp instead. I tell you how in Method 2 of this tutorial. This sends the emails using MailChimp instead of WordPress, therefore avoiding these problems.

Dedicated mailing list platforms

It's better to use a specialist mailing list provider to email your subscribers when you publish a new WordPress blog post. Their servers are configured to maximise deliverability so your emails are less likely to be flagged as spam. They also have built-in features to help you comply with data protection legislation. And you also get professional options for email templates that aren't available with most WordPress plugins.

MailChimp is the world's leading mailing list provider and is free until you have 2,000 subscribers. Next, I will describe 2 easy methods to set up MailChimp to send WordPress blog posts by email. Read through both and choose the method that best matches your needs.

Getting started

If you haven't already started using MailChimp, follow these steps to get set up. You need to do this whether you're using Methods 1 or 2 of this tutorial.

Create a MailChimp account

First, go to mailchimp.com and create an account. It's free to set up and you will only ever have to pay anything to MailChimp if you have particularly high numbers of emails or subscribers (view their pricing page to see if this will apply to you).

Create an Audience

Go to the Audience section of your MailChimp account and create a new audience (previously called 'list' in MailChimp - they changed it in 2019). This is where all your subscribers will be stored.

Follow the instructions to set up and configure a new audience.

Import your subscribers

If you have existing subscribers that you wish to import to MailChimp, create a CSV file containing the data for your subscribers. There should be 1 column for each field - for example column 1 would include your subscribers' email addresses (1 per row), column 2 would be their first names and column 3 would contain their last names, if these are the fields you wish to store. (If you don't know how to create a CSV file, create an Excel spreadsheet with all your contacts, go to File > Save As and choose the '.csv' file type.)

Go to the Audience section of your MailChimp account and click on your audience. Click 'Import subscribers' from the 'Add subscribers' dropdown list. Follow the instructions to upload your CSV file. MailChimp will ask you to match the columns in the CSV file with the fields for your MailChimp audience, then you can go ahead with the import. MailChimp will tell you if there are any problems with the data.

Note: Your subscribers will NOT receive an email to tell them that they have been imported into your MailChimp audience.

Later in this tutorial, I'll tell you how to add a MailChimp signup form to your WordPress blog.


Method 1: Use the MailOptin plugin

MailOptin is a WordPress plugin that automatically emails your blog posts to your Mailchimp subscribers. You can choose whether to send the email as soon as each blog post is published, or as a daily, weekly and monthly newsletter roundup of your posts.

MailOptin is very easy to set up. It doesn’t require any coding knowledge.

To send email notification of new blog posts, you'll need the Pro or Agency plan. Get the plugin, login to your WordPress site and install and activate it.

Step 1 - Connect MailOptin to your Mailchimp account

Firstly, you need to get your Mailchimp API key:

MailChimp API key
  1. Go to 'Integrations' under the MailOption Dashboard menu.
  2. Click on the MailChimp tab to reveal the settings. Enter your API key and hit the 'Save Changes' button.
MailOptin MailChimp API key

Step 2 - Set up a new post notification email automation

Next is to set up the email automation that will be responsible for emailing your MailChimp subscribers when you publish a new post.

  1. Click 'Emails' under the MailOptin Dashboard menu.
  2. Click on the 'Add New' button at the top and select 'Email Automation'.
    MailOptin Add Email Notification
  3. Enter a title for the campaign and select a type:
    • Choose 'New Post Notification' to send the email as soon as a new post is published.
    • Select 'Posts Email Digest' to create a daily, weekly or monthly newsletter digest of your posts.
      MailOptin set up email
  4. Now select a template. You will then be redirected to the email builder.
  5. On the email builder, use the Body, Header, Content and Footer panels to customize the email template to your heart's content. You have options to change colors, add a header image, add custom content and more.
MailOptin email builder
MailOptin plugin settings
The Settings panel is where the the actual setup is done. Open it to set up the email subject and the maximum content length. You can also restrict the automation to specific categories, tags and authors. This is ideal if you want to send an email when blog posts are added to a specific category in WordPress.

Next, scroll down to the 'Recipient' section, select 'Mailchimp' and choose which of your MailChimp audiences (i.e. lists) the email will be delivered to:

MailOptin select recipient

When you are done, click the 'Save Changes' button at the top right corner and then toggle the activation switch to the right to enable the automation.

Step 3 - Add a MailChimp signup form

Now, you need to provide a way for subscribers to sign up to receive new blog posts by email.

With MailOptin, you do not need a separate plugin or form solution to capture and save subscribers to your MailChimp list. Simply follow the instructions in their documentation on how to create a Mailchimp signup form.

MailOptin signup form

And that's it! Whenever you publish a new post in WordPress, MailOptin will email it to your list subscribers - either straight away, or as a daily, weekly or monthly round up of newly published posts.


Method 2: Use MailChimp to send new blog posts by email

This basic method allows you to send new posts by email directly in MailChimp, without having to install any WordPress plugins. It works equally for wordpress.com or self-hosted wordpress.org sites.

Step 1 - Prepare your WordPress blog

Get your RSS feed URL

WordPress automatically generates an RSS feed listing all your blog posts. This is all you need to integrate MailChimp with your WordPress website.

If you want your MailChimp emails to display all the posts that you add to your website then your RSS feed will be https://your-domain.com/feed/ (e.g. the RSS feed for this website is https://barn2.com/feed/).

If you want to email your subscribers when you add posts to a specific blog category then the RSS feed will be the URL for your blog category followed by feed/ (e.g. https://barn2.com/category/wordpress-web-design-blog/feed/).

Find the URL for your RSS feed and save it in a handy place, as you'll need to paste this into MailChimp later.

Important note: The trailing slash / is compulsory, and MailChimp will only recognize your RSS feed if you add it as https://barn2.com/feed/ rather than https://barn2.com/feed. 

Displaying WordPress featured images in your MailChimp emails

Featured-Images-in-RSS-FeedsBy default, any images that you insert into the main content area of your WordPress posts will appear in your MailChimp emails. However featured images will not because WordPress doesn't output them into the RSS feed.

There's a handy plugin called Featured Images in RSS and MailChimp Email (what a mouthful!). This outputs the featured images into your RSS feed so that they are pulled through into your MailChimp emails.

Simply install and activate the plugin, go to Settings > Featured Images in RSS Feeds in the WordPress Admin, and configure the 2 settings. For best results, I recommend selecting the 'Medium' or 'Large' image size and 'Image Centred Above Text' for the position.

The plugin uses the image sizes that you have set in Settings > Media so you can change the size of your Medium or Large image size. Make sure your chosen image size is smaller than 600 pixels - if it's bigger than this, it won't fit into the available space in your emails (annoyingly, MailChimp won't make the images fit automatically).

Can I display other WordPress content types instead of blog posts?

Yes! WordPress posts and ALL custom post type come with RSS feeds that you can use to send alerts via MailChimp. You can use exactly the same method to send email notifications for new events, projects, e-commerce products and more.

Check out our separate article about how to send 'New product' alerts from your WooCommerce store.

Step 2 - Set up MailChimp to send your 'new post' emails

Create a campaign

A 'Campaign' is basically any email that is sent by MailChimp to your subscribers. The next step is to create an RSS-Driven Campaign which will automatically send your new blog posts to your subscribers.

  1. Go to the Campaigns section of your MailChimp account
  2. Click the Create Campaign button in the top right corner
  3. On the 'What do you want to create?' screen, select Create an Email
  4. On the next screen, go to the Automated tab and click Share blog updates. (This is the new way to send an RSS-driven campaign in MailChimp, and isn't easy to find!)
    MailChimp create RSS automated campaign
  5. Name your campaign and select which audience it will send to, then click Begin
  6. MailChimp Create RSS EmailRSS Feed and Send Timing screen:
    1. Add the RSS feed URL which you copied in Step 1 - e.g. https://your-domain.com/feed
    2. Choose how often the emails will be sent and click Next
  7. On the To which audience shall we send? screen, select the audience you created in Step 2 and click Next
  8. On the Campaign info screen, fill in all the information (email subject, From name etc.) and click Next
  9. Select any Template and then click through to the Design tab.
Create a dynamic email subject line

You can use MailChimp merge tags in the subject line, for example to include the title of your latest post.

For example, we use MailChimp to send our own Barn2 blog posts and tutorials by email each week. The subject line is '*|RSSITEM:TITLE|*' & More! For example, if our latest post is called How to use MailChimp to send WordPress blog posts by email then the subject of the weekly RSS email would be 'How to use MailChimp to send WordPress blog posts by email' & More!

MailChimp RSS email subject line

Now design your MailChimp RSS email

Now you get to design the email that will be sent to your subscribers whenever you add a new blog post. This is fairly self-explanatory although you'll need to spend some time familiarising yourself with it. Here are some tips:

  1. MailChimp RSS WordPress blog postsTo automatically include your new blog posts in the email, you need to add the RSS Header and/or RSS Items content block into your email. Find this in the Content section of the Design tab. The RSS Header element will add the title and description of your RDD feed and isn't essential. The RSS Items block will add the title, content and a link to each new post on your WordPress website, so this is essential!
  2. It's fine for you to add your own text before and after the RSS merge tags - for example, an introduction to the email. But don't edit anything within the *| |* merge tags. If you want to edit or remove any of the merge tags then you can read more about them at https://kb.mailchimp.com/merge-tags/rss-blog/rss-merge-tags. If the merge tags look scary and too technical for you then just ignore them and don't make any changes to the sections that contain them, then you won't risk breaking anything
  3. MailChimp will let you make various design changes to the email using the Style tab. This includes changing the background colour, fonts, spacing, link colour, etc. Use these to style the email to match your brand, as well as uploading your logo to the header of the email.
  4. Once you have finished designing your email, click Preview and Test at the top of the screen. Enter Preview Mode lets you view how the email will look on mobiles and full-sized screens. Send a Test Email lets you send a test email to yourself. Test your email in both of these ways before sending anything to your subscribers.
  5. Once you're completely happy with your email, click Next at the bottom right of the screen.
  6. On the next screen, check there are no errors. If everything looks good, click Start RSS.

What's next?

Now your email is set up and will start being sent to your subscribers at the frequency you have selected. The email will only be sent when you have added new blog posts to your website, otherwise, nothing will be sent.

Step 3 - Add a MailChimp signup form to your WordPress blog

Now everything is in place, you need to create a signup form so that readers can subscribe to your blog by email. The best way to do this is usually to add a 'Receive blog posts by email' form to the right-hand column of your blog or website. You can see this in action in the sidebar of this page.

There are lots of WordPress MailChimp plugins that will add a signup form for you. I recommend ChimpMate Pro which is a popular option. It’s simple to set up, has great reviews and there’s a free version as well as the premium version with extra features.

There are many other ways to build your MailChimp mailing list and I won't go into them all here. For example, you can automatically subscribe people who comment on your blog posts, purchase in your e-commerce online shop, submit your contact form, etc. Plan the best way to grow your mailing list as part of your overall online marketing strategy.

Now start blogging!

Everything is now in place. Regularly add new posts to your WordPress website and MailChimp will take care of the rest.

MailChimp will automatically check when new posts are available in your RSS feed, and will email your subscribers at the specified time. Make sure you subscribe to your own list so that you receive the emails yourself. This allows you to spot any problems and make improvements over time.


Bonus tip #1 - Email new blog posts to members only

So far, I've assumed that your WordPress blog is private and everyone can access it. But what if you want to mark part or all of your blog private and members-only? What if you only want to send the emails to members?

Fortunately, that's easy too. Here's how to do it:

  1. Install our WordPress Password Protected Categories plugin. Use it to password protect any or all of your blog categories.
  2. Use the instructions in Step 1, above, to get the RSS feed URL of the category (or categories) you wish to email to members.
  3. Follow the instructions in Step 2, above, to create a MailChimp Campaign to email new blog posts in the private category. Add the password to one of the static sections of the email (outside of your RSS merge tags), with instructions to use it to unlock the private blog. You may wish to create a Group or Segment within your MailChimp Audience for your private blog members, and set the Campaign to only send to this Group/Segment.
  4. Finally, decide how members will sign up for the private blog. If they have already joined your organisation separately then you can simply import them to MailChimp. Alternatively, you may wish to use a plugin such as Gravity Forms to create a MailChimp signup form that links with PayPal, so members have to pay to sign up.

Bonus tip #2 - List blog posts in an easy-to-find table

Once you've been blogging for a while (and emailing your new posts via MailChimp, of course!), your blog might start getting harder to navigate. This is inevitable because most blogs are listed in reverse date order, so older posts easily drop off the bottom - never to be seen again. It's a shame because unless your posts are very time-specific, they can continue providing value well into the future.

The solution is to use the Posts Table Pro plugin to list your posts in a more searchable, sortable format with extra features such as search box and filters. Your blog readers can easily use these tools to find posts about their topics they're interested, regardless of when they were published. It's the perfect way to revive old blog posts.

You'll basically be creating a WordPress blog index, which lists all your posts in an easy-to-navigate table. For example, Journey with Omraam found that their blog was getting difficult to navigate as it grew. They list large numbers of blog posts in a table with instant search above.

WordPress post index page plugin

You can also add filters above the table of blog posts. This makes things even easier for your blog readers, as they can filter to find posts by category, tag, or any custom taxonomy:

WordPress table plugin

This helps to keep your blog posts active and relevant, well after they were first emailed to your MailChimp subscribers.

Wrapping up

As you can see, there are lots of ways to integrate your WordPress blog with MailChimp, either on its own or using MailOptin!

And if your requirements are more complex, then you can combine this method with other WordPress plugins to add extra features. For example, you can add fancy MailChimp signup forms or even make parts of your blog private so that only existing members can read them and receive the emails!

Private WooCommerce Members Only Shop WordPress Plugin

'WooCommerce is perfect for building any type of e-commerce website. That's why it's no. 1! One of its less obvious uses is to create a private, members only WooCommerce store, which restricts access so only pre-approved customers can enter. Read more on how to add a WordPress membership plugin with WoCommerce to create your membership website today.

This is the complete guide to building a WooCommerce members only shop. We'll look at 2 plugins: WooCommerce Private Store and WooCommerce Protected Categories.

I'll help you to choose the right WooCommerce members only plugin for your specific needs, and provide full instructions on how to set it up for your members.

Do I need a members only WooCommerce shop?

There are lots of reasons why you might want a private shopping club where members can buy exclusive products that aren't available to the public. Here are some examples:

  • WooCommerce wholesale pluginMembers buying club - Some stores offer membership plans in return for discounted access to their products. For example, you could use a WooCommerce extension/plugin such as YITH WooCommerce Subscriptions to sell membership on your public store with recurring payments. You can then use this tutorial to create a WooCommerce members only area containing the products.
  • WooCommerce wholesale store - A trade-only e-commerce store might want a WooCommerce wholesale plugin to sell products to approved members at trade product prices. (Note: if you're building a B2B store then you might prefer our dedicated WooCommerce Wholesale Pro plugin, instead of one of the more generic plugins in this tutorial.)
  • Branded products for members only WooCommerce stores - A trade association or membership group might sell branded merchandise that is exclusively available to its members. This might include clothing with the logo of the membership organization.

Whatever your reason for needing a members only WooCommerce plugin, read on to find the right solution for you.

What sort of membership store do I need?

First, let's look at the different types of WooCommerce members-only extension plugins. There are a few methods for structuring a private area and membership store, depending on which customers need access to which products:

  1. 100% private WooCommerce store with 1 membership level With this option, your overall website will be public (e.g. the homepage, core pages, and any custom post types), but the WooCommerce shop will be hidden from public view. Members must log into the private shopping club to view the products and buy them. Once logged in, all members will have access to the same products. Setup instructions...
  2. 100% private WooCommerce store with multiple WordPress membership plugin with WooCommerce tiers Again, your main web pages can be public but the whole of your WooCommerce store will be private and hidden. Different members will have access to different products. Setup instructions...
  3. Members only WooCommerce store with public and WooCommerce members areas With this option, you can have a public WooCommerce store that anyone can access and buy from. In addition, you can have 1 or more private WooCommerce members-only areas. All within the same WooCommerce shop! Setup instructions...

Method 1 - 100% private WooCommerce store with 1 membership level

This method uses the WooCommerce Private Store plugin. Use it to make all parts of WooCommerce private shopping club. Once a member logs into the hidden store, they can view and buy all your products.

Setup instructions for your private members only WooCommerce store

Before you start, I expect you to have a WordPress website with WooCommerce already installed and set up. Create all your products.

At this point, you will have a regular ecommerce store that is available to the public. Use the following instructions to transform it into a hidden WooCommerce members only store:

  1. First, get WooCommerce Private Store. Download the plugin files from the confirmation page or email, and copy your license key.
  2. In the WordPress admin, find Plugins → Add New and upload the plugin files. Activate the plugin.
  3. Activate WooCommerce Private Store licenseGo to the plugin settings page at WooCommerce → Settings > Private Store. Add your license key, choose 1 or more passwords for your store, make any changes to the login page text, and Save.
  4. Now create a page that clients will use to log into the WordPress portal. Use the shortcode [store_login] to automatically add a login form to the page.
  5. Finally, link to the login page from your navigation menu, header, footer, or keep it hidden and just send the link to your members. (This depends on how you want people to access your private store.)

And that's it! That's all you need to do to lock down WooCommerce and turn it into a members only store.

Public visitors can visit your membership site, view your main pages, and access the login page. Your WooCommerce products, categories, etc. will be completely hidden from public view and won't show up in search results or anywhere else. On entering a correct password, members can unlock the WooCommerce members only store and view and buy the products within.

Using individual user logins to unlock the members store

By default, WooCommerce Private Store uses password protection to protect your WooCommerce members only shop. There's also a 'Logged In Users' box on the settings page. Enabling this option will replace the password protection with automatic access to the members' shop when customers log in to their WordPress user account on your website. However, if you want to limit access only to certain user roles, you can customize the settings accordingly.

If you use this option, then you don't need to use the store login page that comes with the plugin. Instead, members can access the entire store simply by logging into their account via the default WordPress login page. (Tip: You can also use any other WordPress login or social login plugin, such as Theme My Login.)


Method 2 - 100% private WooCommerce store with multiple tiers of membership

This method uses the WooCommerce Protected Categories plugin to restrict access to your shop. The shop part of your website is completely hidden from the public. Your  WooCommerce members-only shop is divided into multiple sections. Each member can have access to 1 or more areas within the shop.

This is a great opportunity to sell different private products to different members. For example, if you have different groups or tiers of membership, then you can create a separate area of your store for each category.

Before you start, you should already have a WordPress site with WooCommerce and various products. At this point, your store will be fully public.

Use the following instructions to turn it into a multi-level WooCommerce members only store, with different product pages available to different groups of members.

(You can also use these instructions to sell user-specific products, such as branded clothing for a sports team or school. In this case, you will have a different category of products for each member.)

Setup instructions for a multi-level WooCommerce members store

  1. First, buy WooCommerce Protected Categories. Copy your license key and download the plugin from the confirmation email or confirmation page.
  2. In WordPress, go to Plugins → Add New and upload and activate the plugin.
  3. Navigate to WooCommerce → Settings → Products → Protected Categories. Enter your license key, make any other changes (e.g. to the members' area login form), and click Save. DO NOT tick the boxes to show protected categories in public parts of the store.
  4. WooCommerce school category visibilityNow, go to Products → Categories. Create a category for each membership level or group. For each category, select one of the 'Protected' options:
    • Password protected - Members must enter a password to access each members-only product category. This WooCommerce password protection is separate from WordPress user logins. It's a good option if you don't require separate accounts for each member.
    • User roles - Automatically unlock the members-only category for logged in users with a specific role. (Tip: The free User Role Editor plugin works great for creating additional WordPress membership plugin with WooCommerce levels, which you can then protect using WooCommerce Protected Categories.)
    • Users - Alternatively, select the individual member accounts that should have access to the members-only WooCommerce category. This option is probably best for smaller WordPress membership sites. I'd recommend the password protection or user roles options for WooCommerce stores with lots of members.
  5. Next, add any sub-categories to your members' area categories. Leave these set to 'Public', as they will automatically inherit the same protection as the parent category.

Now add your protects and allow members to login

  1. Next, go to the main Products page in WooCommerce. Put each product in one of your members-only categories. (I recommend using Quick Edit to categorize products more easily - hover over each product and click 'Quick Edit'.)
  2. Finally, create a page that members will use to log into their area of the members only store. Add a 'Member Login' link to your navigation menu. This depends on what type of protection you're using for your membership plugin categories:
    1. If you're using password protection, then use the shortcode [category_login] to add a login form to any page. You can link to this from the public parts of your website as needed. When someone logs into a members-only category, the plugin will instantly redirect them to the category matching the password entered.
    2. If you're using user roles or user restrictions, then you should link to a user login page such as the main WooCommerce Account page. To make your WooCommerce members store more user-friendly, you can use a free plugin named Peter's Login Redirect to automatically redirect each user or role to the correct category page after logging in.

How the multi-level members store works

Once you have completed the above instructions, you will have a complete WooCommerce members only shop with multiple levels.

Customers can view the public parts of your website as usual. They can go to the members' store login page and either enter a password or log into their WP user account.

Members can only see the products that they have access to. The restricted products are hidden from everyone else.

You will need to set up a process for giving the password to your members or allowing new members to register for the store.

Giving the password to your members

For password protected membership areas, you might want to include the password for the appropriate product category in your members' welcome pack or 'new member' email. The WooCommerce members only plugin supports multiple passwords, or you can use the same one for each user.

Creating a user account for new members

The WooCommerce 'Account' page turns into a login and registration form for logged out users and guests. If you have enabled user registration, then you can let new members use WooCommerece shop only for registered users here. Once they have logged into their new WP user account, they can access the members-only store.

Alternatively, you can use any WordPress front-end registration/login plugin to create a fancy registration form. The Theme My Login plugin has a useful feature to hold new member registrations for approval by an administrator before they can access the members-only store.

If you'd rather sell membership via your website, then you can do this by creating a public product that everyone can buy. To find out how skip ahead now.

Can I sell the same product to more than 1 membership level?

Each product can only be in 1 protected members only category. If you want to sell the same products to 1 or more groups of members, then you should clone these products and put one version in each WooCommerce protected category. The Duplicate Post plugin makes it easy to clone WooCommerce products. (If you want to manage inventory across each product version, then we recommend the Group Stock Manager plugin. This lets you share stock levels across multiple products.)


Method 3 - WooCommerce store with public and WooCommerce members areas

This method also uses the WooCommerce Protected Categories plugin. It builds on method 2 by adding a public shop as well as one or more WooCommerce members only areas. Some products are available to everyone, while you can also have private members only products.

Setup instructions for a public and members only WooCommerce shop

The instructions for this use case are identical to method 2. The only difference is that as well as creating protected members-only categories, you should create some public product categories.

The next step is to create a user-friendly navigation structure for your public and WooCommerce members only store. We'll look at this now.

Store navigation

Think carefully about how to structure your WooCommerce store. It needs to be intuitive for both members and non-members:

  1. Public store navigation - This bit's easy. Simply add links to your public store in the usual way. For example, you might add menu links to the main WooCommerce shop page and maybe your public store categories. You can also use the widgets that come with WooCommerce to help people navigate the public store.
  2. Membership plugin: Members only shop navigation - The public shop will remain visible to logged in members, so you need to create navigation links that make it clear when they're in the members only WooCommerce shop. Some tips:
    • Create a page which members will use to log into the members only store. If you're using password protected categories, then use the shortcode [category_login] to add a login form to the page. If you're using role or user protection, use a front-end user login page such as the WooCommerce Account page. You can link to your members store login page from the public areas, such as a 'Members Store' link in the navigation menu. Or if you want to keep it hidden, don't link to it at all and just send the link to your members. Once someone enters a correct password, they will be redirected to the members only store category for that password.
    • If you add direct links to your WooCommerce members only categories to the navigation menu, then these will be hidden from public view. Once a member unlocks their hidden products via the category login page, these menu links will magically appear in the menu for them! This is a neat way of adding more complex structures within your members only WooCommerce store. Each member will only see the products that they have access to.

Can the same product appear in the public and members only areas?

If you've ticked the box on the settings page, then your members only WooCommerce products can appear in the public store. When people click on them, they will have to enter the password in order to purchase.

However, each single product page can only be in a public OR a password protected category. If you want to sell the same products to the public and use the WooCommerce shop only for registered users feature, then you will need to clone the individual products. The Duplicate Post plugin is a great add-on that makes it easy to clone WooCommerce products. Then, you can put 1 version of each product in the different parts of your store.

How can I sell access to my WooCommerce members only store?

Finally, I'll reveal how you can sell access to your members only WooCommerce store with this membership solution. Skip this section if you don't want to charge for membership.

  1. First, create a public category under Products → Categories.
  2. Now add a product to this category - Products → Add New. Call this 'Buy Membership' or whatever you like. Add a price and other information about joining your WooCommerce membership purchasing club.
  3. Your membership product should be a normal simple or variable product if people have to make a one-off payment to join. Alternatively, if you want to take regular ongoing payments from members, then use the YITH WooCommerce Subscriptions plugin to create a subscription product. This can include free trials and different payment frequencies.
  4. Create more than one membership product if you want to sell different paid membership tiers on this membership plugin.
  5. Link to the membership products from prominent places on your public website, such as the navigation menu.
  6. Lastly, consider how to give new members access to your WooCommerce members only store. This depends on the type of protection you're using:
    • Password protection - Use the Follow-Up Emails plugin as an add-on to automatically send an email containing the members' area login link and password to everyone who buys the membership plugin. This plugin provides fine-grained control, and you can create different emails for each membership product.
    • Role protection - The easiest way to do this is to automatically unlock the hidden membership plugin for all logged in Customers. Disable guest registration in the WooCommerce settings (WooCommerce → Settings). When someone buys a product, including membership, they will receive the logins for a customer-level account. They can log into this account to unlock the WooCommerce members only store.
    • Individual logged in user protection - Finally, is your members only store is restricted to individual logged in users? If so, then you will need to manually give each user access when they purchase a membership. Just head to the 'Edit' screen for the members only category, and select them under the 'Protection' options.

Use WooCommerce to create a members only store

Using the above methods and funtionality, you can use WooCommerce to create content restrictions and sell exclusive products to pre-approved customers. Whether you have a WooCommerce shop only for registered users or a separate public online store, there is always a best WooCommerce members only plugin that will suit your needs.