WooCommerce is the leading platform for creating an online shop and powers over 29% 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.
One of the most common WooCommerce requests that WordPress agencies 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 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 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’s WordPress website might have a hidden membership area allowing staff to purchase uniforms 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 member 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 that can be given to all members.
Below, I will describe 6 ways to create a members-only WooCommerce area.
6 types of WooCommerce members-only store
First, here’s a quick summary of the 6 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 organizations 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, 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.
- WooCommerce members-only store β Create as many different member roles as youβd like and set percentage-based discounts for each user role. Let members register from the front end or assign member roles manually. Useful if you want to sell products to members at different rates based on their user role. Also lets you make product categories private while still having a public-facing 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
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 is 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 adding 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 a 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.)
Another free alternative would be Paid Member Subscriptions. This membership plugin allows you to restrict WooCommerce product view and product purchase based on logged-in status, as well as a subscription plan. You can filter which of your members get to see and purchase specific WooCommerce products.
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 downside
- The biggest downside of 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 it 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 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 the public view. Members can use a shared password or log into their user accounts 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.
Create a members-only WooCommerce store with the our top recommendation for wholesalers and private member areas.
Create a Private StoreHow 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 WooCommerce Private Store, install it on your site, and then activate the 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 maximize 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.
WooCommerce Protected Categories
Create private categories on your WooCommerce store.
Get Protected CategoriesHow 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 they log in, 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.
6. WooCommerce Members-Only Store
The WooCommerce Wholesale Pro plugin makes it easy to create a WooCommerce members-only store in a few simple steps.
This members-only plugin works by letting you create a private members-only area on your existing store. This way, you can have a public-facing site with a members-only area thatβs hidden from regular visitors. In addition to this, you can allow members to register from the front end (with or without admin moderation) or assign member user roles manually.
It also lets you choose which products to show on the front end to members. Using WooCommerce Wholesale Pro, you can set global or product category-specific percentage discounts for your siteβs members. Alternatively, you can set members-only prices for individual products.
Use the WooCommerce Wholesale Pro plugin to offer wholesale shopping and even hide product prices for anonymous visitors!
Get Wholesale ProHow to use the members-only store plugin
You can set up the WooCommerce Wholesale Pro plugin and create a members-only store in under 15 minutes.
To get started, purchase the WooCommerce Wholesale Pro plugin and install and activate it to your WordPress site. Next, add your license key to the settings page (WooCommerce > Settings > Wholesale > General). From the same screen, you can set up member registration and choose the members-only store page.
You can also click on the Roles tab to create new member roles, set global percentage discounts, and choose which member role should be the default user role. Alternatively, you can set category percentage discounts or create product-specific pricing for members.
The members-only plugin also lets you control the visibility of your WooCommerce products. You can choose to make product categories visible only to members, both members, and regular visitors, or regular visitors only.
Which members-only plugin do you use?
In this article, I’ve covered 6 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 share your comments below.
29 Responses
Hi Katie
I have the following situation, and am not sure if any of the options you mention are what I need! Can you please steer me in the right direction?
I have an online store that I want to keep open to the public, but I also want to offer the same products to schools and sports clubs for their fundraising. I’m trying to find the simplest solution to be able to separate each organisations sales totals and order information.
I would like each school/club to have a login that all of their members/parents can use to go and purchase the goods (entering their own details, name etc, for sales tracking/delivery purposes), and then I need to be able to track total sales per school/club so a percentage of the final amount can be given to the organisation for their efforts (this is how they get their fundraising money).
Thank you for your help with this.
Hi Rachael, you can easily achieve this with the WooCommerce Protected Categories plugin. Keep your main products in public categories so that everyone can access them. In addition, create a separate password-protected category for each school and sports club, and put their private products in there.
Use the shortcode [category_login] to create a ‘School/club Login’ page (or whatever you want to call it). Parents should enter the password for the appropriate school/club, and they will be directed to the hidden category listing the products.
They can then add products to the cart and purchase using the normal WooCommerce checkout. This includes entering their own details, name, etc. and checking out either as a guest, or creating their own account (depending on how you choose to set up WooCommerce itself).
The built-in reports that come with WooCommerce let you track sales by category, so this is an easy way to track total sales per school/club. You can then manually send the correct & to the organisation, or you could even automate this using the PayPal Adaptive Payments WooCommerce extension!
If you have any more questions, feel free to reach out to support@barn2.co.uk.
We have a scenario where all products should be visible, but certain catagories restricted to purchase by a certain user role. Possible? Thanks!
Hi Richard, you can do this with the WooCommerce Protected Categories plugin. You need to tick the catalog visibility options on the plugin settings page which tell the plugin to show the protected categories and their products in the public parts of the shop. This will display the products from the restricted categories on your main shop page, but if someone tries to click through to the single product page then they will have to log in.
Please note that the products in restricted categories will be visible on the shop page and in locations such as related products and the ‘Products’ widget. Logged out users will not be able to access the single product page or restricted category pages until they have logged in.
Let me know if you have any more questions.
hello Katie,
thanks for this helpful article. Woocommerce Plugins have been challenging for user-specific products. WooCommerce Password Protected Categories will be a big help.
Competition is a good thing because it encourages us to keep improving and adding new features, as well as giving customers a choice. The only problem is when people call plugins by very similar names, as it confuses customers and also undermines the other plugin by making it look less reputable. For example, one time another company released a new plugin called ‘WooCommerce Product Table’ which is the name of one of our plugins, and we started getting support requests from people who were using our knowledge base to set up the other plugin and wondering why the instructions weren’t working! So competition is good where the plugins are clearly set apart from each other and there is no confusion.
Hello Katie,
It appears like you cannot handle competition, has it been a perfect world where only one module would exists with no competition for any functionality.
It is obvious that you would only be recommending your plugin. I remember how much worse your plugin.
Ask a neutral man to compare these plugins and you would know how much these 2 plugins are different in terms of features and why the one you are calling cheap is far better than yours. Its a new plugin, in no time they would have some reviews, real reviews unlike yours at barn2.
The two CodeCanyon plugins you have mentioned look like cheap copycat plugins and have very few sales and no reviews yet, so I wouldn’t feel confident adding them to a live website yet.
We have emailed the author asking them to stop infringing our copyright because they have given these plugins the same names as our existing plugins, and are implying the two are related which will confuse people.
Hi Sagar, I don’t know of a single plugin that can do all this, but here is some advice for you on suitable plugins that work together:
1. You can either use the built-in WordPress/WooCommerce user registration, or if you don’t need clients to have user accounts then you can use any contact form plugin (e.g. Contact Form 7 or Gravity Forms) to let them apply to sell products on your website. The latter would then email you so that you can create their password protected category, add their products and give them the password.
2. You can use the WooCommerce Password Protected Categories plugin to create a hidden category for each client and add their products to that category.
To allow clients to add their own products, you could use the Gravity Forms plugin which has an add-on called ‘Gravity Forms Custom Post Types’ where they can submit a form and this will automatically create a custom post type, i.e. a WooCommerce product.
3. The WooCommerce Password Protected Categories plugin lets the client add a password into a login page, and they will be directed to the category containing their hidden products. This will appear in the default layout, and if you want an actual list view then I recommend the WooCommerce Product Table plugin.
4. Once the client has unlocked the category, they can order their hidden products in the usual way.
I hope this helps.
How below steps can be satisfied by a single plugin of woocommerce…
1. Register for client
2. Client himself or I as Admin can add products
3. Client will log in to view own products in as a list
4. Client will place an order for own products for own end customers.
Hi Katie,
We have a wholesale food distribution company. I need each one of our wholesale customers to login with their own user name and password. it would take them to a page where they would see their authorized items to purchase. If possible, they could also see the items they’ve purchased in the past. So, basically one grocery chain would have each store manager login and purchase what they need. Each grocery chain would have a different set of products listed and separate pricing. No two grocery chains would be able to see each others items or prices. Total security. No one would be paying for product. All sales are open credit with the grocery chains.
No public viewing. Strictly registered to approved customers. Where do I begin? Who can help me get this accomplished? I have a website with WordPress so I’m familiar with plugins. I just have no idea how to accomplish what I need. Thank You !!!
Hi Jeff, thanks for your comment. Hmm, this is a tricky one because WooCommerce Password Protected Categories lets you create a separate hidden category containing unique products for each customer, but is not linked to individual user accounts and the categories can only be unlocked by entering a password (rather than logging into a user account).
In contrast, WooCommerce Private Store DOES integrate with individual user accounts and the store can be unlocked when a user logs into their account. However, this plugin hides the entire store globally and there’s no way to create user-specific products.
I recommend using WooCommerce Password Protected Categories, if you are able to compromise and use the password protection instead of user login. (Of course, users can still have their own accounts to save re-entering their data on the checkout etc., but this won’t unlock their hidden category.)
Hi Katie,
What of the plugin you mention in your article is best for have an individual catalog by customer. Hi will be the only to see his product with his own login. Thank you
I’m so glad I found your article Katie! I’ve been searching literally for months (I gave up for awhile and tried something inferior). You’ve addressed all my concerns where other out-of-the-box member area articles fail. This is a great breakdown of multiple variables a user might need from their members area. Now I can go and uninstall all those other plugins and remove all the code I’ve previously tried! Cheers, Katie π
Hi Lauren, I’m so glad it was helpful for you!
Looks like it may suit my needs but if I can explain what I want to achieve on my website, you will be able to tell me if this plugin will achieve all or part of my needs.
On my website I want to be able to allow paying members only, the opportunity to list
their own products (in my case memorabilia items) for sale/swap etc. I would need them
to be able to list the products themselves. I want to charge a small amount (sayΒ£6 per year) for membership. I want members to be contactable by other members and for the members to receive payments outwith the site and make shipment of the products themselves.
I think other plugins would also be required.
Your comments would be much appreciated.
Hi Malcolm, it sounds like you need a multivendor plugin rather than a membership or password protection plugin. This will let members register and list their own products. There are quite a few good multivendor/marketplace plugins available, including an official one at woocommerce.com and one from Dokan which is very popular. You would need to check whether they have a feature that lets you charge an annual fee for membership, and for members to contact each other. Hope this helps!
Hello Katie.
Many thanks for your prompt response.
It will help me go forward.
Great list. Especially the one about creating membership site without any additional plugins – very interesting! However, we have found our customers are using a combination of WooCommerce Memberships + WooSubscriptions + our plugin woocredits.com to create vibrant online businesses feautring the best of subscription based, membership businesses.
Thanks for a great article. I think Password Protected Categories is the solution I am looking for.
An interesting discussion is price comment. I feel that it’s best to write
extra on this matter, it might not be a taboo subject
however typically individuals are not enough to speak on such topics.
To the next. Cheers
I just want to use Dokan and need my members to have a subscription, and only those members with a subscription can view products. What route would you recommend to take?
Hi! I decided to create a shop, and the author’s website, for the reason: I couldn’t connect a payment system, we do not work PayPal, and woocommerce is closely linked to PayPal.
Can this work with dokan?
It depends on which of the plugins mentioned in the article you want to use Dokan with.
Dokan will definitely work with password protected pages and products, as all you’re doing is protecting individual pages/products within a WooCommerce store and it doesn’t matter what other plugins you’re using.
If you’re using a membership plugin such as s2Member then I’d recommend contacting the plugin company to ask, as it depends on how the plugin is designed to work.
If you’re using WooCommerce Private Store or WooCommerce Password Protected Categories then it should be ok as long as you’re still using the standard WooCommerce products and categories (but with the extra multi-vendor functionality provided by Dokan).
Let me know how you get on so I can share your findings with other people who want to do this!
Hello! Who knows woocommerce? I have a problem in the store kladproraba.com is not displayed the unit for external/affiliate products, reviews block works only when the setting indicated that it is the external product and the reviews block no. Third-party plugins did not solve the problem, only plug diskus works, but it’s not what you need. Have experience how to solve the problem? Share with me Your experience, I would be very grateful!
Amazing ideas for woocommerce store in WordPress. These tips very useful and applicable when making woocommerce stores. Thanks for sharing!
Hi Roland, yes this is a limitation of password protecting individual pages or categories. s2Member (and other membership plugins such as Paid Memberships Pro, WooCommerce Memberships or Groups) is a more fully featured membership solution which lets you create a unique username and password for each user. Some websites will benefit from this, whereas others find it too much of an overhead to create and maintain separate user logins for each person, especially if they have a large user base which changes regularly. In this case, password protected WooCommerce categories can be a good solution, especially if the protected products are not too sensitive.
Another option is to use S2member. The advantage – “member” sign-up and management. Password protecting products, pages or categories works but, you have to give out the password. What happens when a person you gave the password no longer is a “member” that you want to have access? You need to change the password and give it out again.