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 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 area?
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 for wholesale members.
- 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 her training courses. She sells course-specific products that are exclusive to each level).
- You might have a public online shop with the option to become a member and access extra members-only products.
- Your company WordPress website might have a hidden membership area allowing 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.
All WooCommerce members stores are unique…
Each of the scenarios I’ve listed above is really quite different. Some of them require the entire WooCommerce store to be locked down. Others have a public and a private area within the online shop. Some require unique logins for each member. Others would benefit from having a single password which can be given to all members.
Below, I will describe 5 ways to create a members-only WooCommerce area.
Summary – 5 types of WooCommerce members-only store
First, here’s a quick summary of the 5 methods featured in this article. Use this to choose the one that best meets your requirements, then learn how to create your members store below.
- WooCommerce members area with no extra plugins – A very simple option where you add your members-only products to a password protected page in WordPress. This is a nice basic solution for small organisations but the other methods are more secure.
- WooCommerce membership plugin – Restrict your WooCommerce products and other content using a membership plugin. Tricky to set up and may not protect all aspects of WooCommerce, but useful if you want each user to have a unique login for your WordPress site.
- Private WooCommerce Store – A simple but effective plugin that completely hides your WooCommerce store and makes it private. Public visitors won’t know that you have a hidden members-only store.
- WooCommerce password protected categories – Similar to method #3, but you can password protect individual categories instead of hiding your whole store. Useful if you want public and members-only areas within a WooCommerce store.
- Private WooCommerce categories – Make specific categories and their products visible only to logged in members with a specific user role. Useful if you want members to have individual logins for your WordPress site. You can make some categories private while still having a public WooCommerce store.
#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.
Learn about the features that are built-into your theme, WooCommerce and WordPress itself. This is an opportunity to design a basic members-only WooCommerce store with no extra plugins.
How to create a WooCommerce members-store with no 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. Then 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 using the same method as protecting 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 different groups 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). Your shop page will list your members-only products as well as your public products.
If you want to keep things simple then it fine for your members to share the same password for your protected shop page. You won’t have to worry about letting members sign up directly on the website. You don’t have to bother added them as individual users or helping them with lost password/login problems. This eases the administrative burden on you as the store owner. However if your members store needs a more secure and fully featured solution then you’ll need methods #2-5.
#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. 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.
The other advantage is that if you use a WooCommerce-compatible membership plugin, people can 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. This means that you benefit from guaranteed support and compatibility. (WooThemes have published a useful comparison to help you decide which membership plugins best meets your needs.)
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 restrict your members-only WooCommerce products and categories to the appropriate membership level.
- The biggest downside membership plugins is that they’re significantly more complex to set up and maintain than the other 4 methods. Your WordPress developer will charge much more for this option and it’s probably not realistic for you to do yourself. This adds to your development costs, as well as ongoing website maintenance. Only use this method if you definitely need a membership system of this complexity.
- 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 method #4 or #5, below.
- If your whole WooCommerce store is members-only then you can also restrict your main shop page to members. This can cause problems if your store has a public and private areas, as members-only products will still appear on the main shop page. They’ll get an error if they click on the members products, but they will still see that they exist which isn’t professional. If this is a problem for your store, use methods #3, #4 or #5 described below.
- Giving each member a unique login is definitely the most secure option, but doesn’t suit all websites. You might be better off keeping it simple by giving a shared password to all your members. That way, you don’t have to worry about creating and administering multiple user accounts.
- 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.
#3 – WooCommerce Private Store
WooCommerce Private Store is the easiest way to create a completely hidden members-only store in WooCommerce.
This members-only plugin works by password protecting all areas of WooCommerce, or restricting your store so that only logged in members can access it. The main shop page, products, categories, tags and other store content are hidden from public view. Members can use a shared password or log into their user account to unlock the hidden store.
Your public website is completely unaffected by WooCommerce Private Store. Visitors will view your company website as usual with no idea that there’s a hidden online shop in the background.
Other WooCommerce elements such as widgets and menu items are hidden until you enter the correct password. When a member unlocks the hidden store, these elements automatically become visible to them.
As well as password protecting every part of WooCommerce, the private shop plugin has extra features behind the scenes. It automatically hides WooCommerce content from search engines, XML sitemaps and the on-site WordPress search. This means that only your members will know you have a hidden WooCommerce store as it’s completely hidden from public view.
How to use the members-only store plugin
It just takes a couple of minutes to set up WooCommerce Private Store and create a hidden members store.
The first step is to purchase, install and activate the private shop plugin. Add your license key to the settings page (WooCommerce > Settings > Products > Private Store).
On the private store settings page, you’ll see a few simple options. The most important options are to select a WooCommerce login page and password, or choose whether you want to automatically unlock the members-only store for logged in users. If you want, you can also customize the text that appears on the store login page.
Everything else happens automatically, and you don’t need to do any further setup. Once you’ve followed these steps, your whole WooCommerce store will be private to members only. No one else will even know it exists, unless you add a link to the login page!
#4 – WooCommerce password protected categories
The WooCommerce Protected Categories plugin is designed to overcome the disadvantages of other methods for creating a members-only WooCommerce store.
It works by adding a password protection option to the WooCommerce product categories page. You can password protect any category.
WooCommerce Protected Categories is designed to maximise the security of your members-only online shop. It does this while being user-friendly for members and non-members.
Password protected members-only categories – Feature list
- 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, such as restricting them to specific logged in users or user roles. Skip ahead to Method 5 for details.
- Unlike methods #1 and #2, password protected WooCommerce categories are automatically hidden from the main shop page. The products within the protected category will be hidden too. This lets you list them within a members-only area of your site without anyone else being able to see them.
You can have password protected categories alongside public areas of your WooCommerce store. This means that you don’t have to restrict your entire shop to members. You can either put all your products within protected categories, or have some public and some private members-only categories.
How to use the password protected categories plugin
First, install and activate WooCommerce Protected Categories on your WooCommerce website. Next 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 method is that it’s not as secure or fully-featured as having individual user accounts for each member. Some members-only store owners love the simplicity of protecting their store with one or more simple passwords – making password protected categories is a great option. However, if you need the added security of individual user logins, then Method 5 might be a better option for you.
#5 – Private WooCommerce categories
Finally, you can create a members-only WooCommerce store by creating private product categories that are only available to specific logged in users or user roles. This is another protection option in the WooCommerce Protected Categories plugin featured in method #4. But instead of password protecting categories, you restrict them to individual users or entire roles.
User role protected WooCommerce categories are only visible to logged in members with the correct privileges. Each member needs their own user account on your WordPress website. When the login, they will automatically be able to access the WooCommerce members-only store.
How to create a members-only store using WooCommerce user and role protected categories
The first step is to purchase, install and activate the WooCommerce Protected Categories plugin. Add your license key to the settings page (WooCommerce > Settings > Products > Protected Categories).
If you want to create a dedicated user role for your members, then you can easily do this with the free User Role Editor plugin. You can create a single user role for all your members, or if you have multiple membership levels then you can create additional roles. This is a good way to give different members access to different members-only products.
Once you’ve created a members role, go to Products > Categories. You’ll see a new ‘Visibility’ option when you add or edit a category. Choose ‘Protected’ and select one or more users or user roles that will have access to the members-only category. Leave any sub-categories set to ‘Public’, and the plugin will automatically protect them too.
Then, you just need to create a user account for each of your members. When they log in, they’ll be able to see your members-only WooCommerce categories and the products within them. The private WooCommerce content will be invisible to everyone else.
Which members-only plugin do you use?
In this article, I’ve covered 5 top ways to create a WooCommerce members-only store. Which solution do you think is best? How did you create a members-only WooCommerce shop on your own website? Are there any plugins I’ve missed? Please add your comments below.