WooCommerce is the leading platform for creating an online shop and powers over 26% of all e-commerce websites worldwide. While the core WooCommerce WordPress plugin is free, there are hundreds of free and paid extensions which allow it to be used to create almost any type of online store – often without touching a single line of code.
As a WordPress web agency in the UK, one of the most common WooCommerce requests we receive is to create a members-only WooCommerce store. The entire store may be exclusive to members, or – more commonly – you may require separate public and private areas of your online shop.
There are several different ways that you can create a members-only shop using WooCommerce, each with its own pros and cons. I will guide you through the options and help you to choose the best solution for your own WordPress website.
Who needs a members-only WooCommerce store?
Restricting part or all of a WooCommerce store to members can meet various different business needs. Here are some popular scenarios that we have seen with our own clients:
- You might use WooCommerce to sell products to retail customers and need a private area of your store for wholesale members or registered distributors.
- You might have a WordPress membership website and sell products exclusively to your members.
- Your WordPress site might have multiple membership levels, each with access to different products (for example, one of our clients has a different membership level for each of the training courses she runs, and sells course-specific products that are exclusive to each level).
- You might have a public-facing online shop with the option for people to become a member in order to access additional products which are exclusive to your members.
- Your company might have a WordPress website with a hidden membership area allowing your staff to purchase uniform or other products.
There are probably many more reasons to restrict WooCommerce categories to members – please add your own reasons in the comments below.
Each of the scenarios I’ve listed above is really quite different. Some of them require the entire WooCommerce store to be locked down, whereas others have a public and a private area within the online shop. Some of them require unique logins for each member, whereas others would benefit from keeping it simple by having a single password with can be given to all members.
Below, I will describe 3 ways to create a members-only WooCommerce store. Which method you choose will depend on your exact requirements.
#1 – WooCommerce members area with no extra plugins
Like many people in the WordPress community, I have long argued that a website can have too many plugins. Where possible, it’s best to keep things simple and use the features that are already available instead of bolting on extra functionality. By understanding the features that are built-into your theme, WooCommerce and WordPress itself, you can go a long way to designing a members-only WooCommerce store with no extra plugins.
The exact method will depend on your theme, but here are some possibilities:
- Create a page in WordPress as usual and password protect it. (You can find the password protection option for pages in the ‘Publish’ section at the top right of the ‘Add/Edit Page’ screen.) Use the ‘Product’ or ‘Product Category’ WooCommerce shortcodes to insert the products for your members-only WooCommerce store into the password protected page.
- Some of the more advanced WooCommerce-compatible WordPress themes (usually the ones on ThemeForest, which tend to have more features than themes from other sources) have built-in options for displaying products. You can create a password protected page as described in the previous point and use the theme to insert your members-only products or categories. If your theme has this feature then your products will probably be styled much more professionally than the default WooCommerce shortcodes.
- You can also password protect individual WooCommerce products in the same way as you can protect pages and posts in WordPress. This is worth doing if you only have a small number of members-only products, or if you want to make each product available to a different group of members. It’s less user-friendly for larger membership online shops because your members will have to enter a password for every single product they view – even if each product has the same password.
The downside with this option is that it’s pretty basic and involves a lot of compromises and there are some security loopholes. For example WooCommerce automatically creates a main ‘Shop’ page listing all your products. Even if you aren’t directing people to this page, people will still be able to find it (e.g. by guessing the address) and it will list your members-only products as well as your public products.
If you want to keep things simple then it’s a good thing that your members will all share the same password for your protected shop page. You won’t have to worry about letting members sign up directly on the website, adding them as individual users or helping them with problems with their login details, which eases the administrative burden on you as the store owner. However if you need a more secure solution with unique passwords for each member then you will need method #2.
#2 – WooCommerce membership plugin
The most sophisticated way to create a members-only WooCommerce store is to use a WordPress membership plugin. Membership plugins are a great option for more advanced websites because you can have multiple membership levels, and each member has their own unique login – no shared passwords.
Membership plugins also allow you to create other members-only content such as static pages and posts. If you need a wider members area in addition to your protected products and categories then this is the best option for you.
The other advantage of this method is that if you use a WooCommerce-compatible membership plugin, you can allow people to purchase membership (along with your other products) directly on your website. You can automate the entire process so that they can sign up, pay and receive their login details without any involvement from you.
Which membership plugin to use?
If you’re using WooCommerce and want to create members-only products then you need a WooCommerce-compatible membership plugin. This immediately narrows your choice of plugins.
I would recommend either WooCommerce Memberships, or the free Groups plugin with the Groups for WooCommerce add-on. Both of these paid plugins are by WooThemes, the company behind WooCommerce, so you benefit from guaranteed support and compatibility. (To help you decide which of these plugins best meets your needs, WooThemes have published a useful comparison.)
How to use a membership plugin to create a private WooCommerce shop
First, set up your membership plugin in the usual way. Create your members-only section of the website and restrict access to your members. You can then add your members-only WooCommerce products within the membership area and protect them using the plugin.
- The biggest downside of using a membership plugin is that it is significantly more complex to set up and maintain than the other methods described in this article. Your WordPress developer will charge a lot more for this option and it’s probably not realistic for you to do yourself. This adds to your development costs, as well as the ongoing maintenance of your website. It’s a good option, but only use it if you definitely need a membership system of this level.
- The membership plugins I have recommended allow you to restrict WooCommerce products to a specific membership level. However they do not let you restrict entire categories. If you need to restrict access to WooCommerce categories then you need option #3, described below.
- Once you have restricted your members-only products, non-members will not be able to access these products. However these products will still appear on your main shop page and possibly in other places too, depending on your website structure. If they click on the link to view the product then they will not be able to access it, but they will still be able to see it. This may or may not meet your needs.
- Giving each member a unique login is definitely the most secure option, but it doesn’t suit all websites. You might be better off keeping it simple by having a shared password which you can give to all your members. That way, you don’t have to worry about creating and administering multiple user accounts or supporting members who are having problems using the ‘Lost password’ link.
- Most membership plugins don’t include the ability to create dynamic navigation menus in which each membership level can see the content that is available to them. This makes it harder to create an intuitive membership site, unless you want to pay your web developer to develop dynamic menus as a bespoke feature.
#3 – WooCommerce password protected categories
We developed the WooCommerce Password Protected Categories plugin to overcome the disadvantages of the other methods for creating a members-only WooCommerce store.
It works by adding a password protection option to the WooCommerce product categories page, allowing you to password protect any category.
WooCommerce Password Protected Categories is designed to maximise the security of your members-only online shop while still being user-friendly for members and non-members. For example:
- All products within a password protected category will automatically be protected with the same password. After a member enters the password, all products in the category will be unlocked without having to re-enter the password.
- If you add sub-categories to a password protected category then all the products within the sub-categories will also be protected.
- The plugin includes an option to automatically hide password protected products and categories from the navigation menu.
- You can also use the plugin to protect WooCommerce categories in other ways, for example by marking them as private so that only logged in Editors and Administrators can access them.
- Unlike methods #1 and #2, if you protect a WooCommerce category using this plugin then it will automatically be hidden from your main shop page. The products within the protected category will be hidden too, so you can list them within a members-only area of your site without anyone else being able to see them.
How to use the plugin
Once you have installed and activated WooCommerce Password Protected Categories on your WooCommerce website, go to Products > Categories in the WordPress admin and password protect your members-only categories.
You don’t need to password protect any sub-categories or products within the category as this will all happen automatically. If you like, you can add links to your password protected category – for example to the header, navigation menu or within a page. Or you can keep the address private and just give it to your members.
Next, give the password to your members and your members-only WooCommerce store will be complete.
The only real downside of this plugin is that it’s not as secure or fully-featured as a complete membership plugin. If you need the security of a unique login for each member then a membership plugin is the way to go. However, if you want to create a simple members-only WooCommerce store then WooCommerce Password Protected Categories is a great option.