In response to popular demand, we have launched a new WordPress plugin called WooCommerce Password Protected Categories. It's the only plugin which lets you password protect categories in WooCommerce. It's even possible to create a WooCommerce wholesale site or hide a whole WooCommerce store!

Note: Since launching this plugin, we have added extra functionality and renamed it 'WooCommerce Protected Categories'. You can still password protect product categories, but you can also restrict categories to specific roles or even individual users. This makes it the most complete WooCommerce category protection plugin on the market. 

Why password protect WooCommerce categories?

WooCommerce Private Products pluginThere are several reasons why you might want to password protect a category or create WooCommerce private products. Here are some popular examples:

Most WooCommerce websites are entirely available to the public. However with nearly 2 million websites using WooCommerce in 2017, there are also lots of stores that need protected, private or hidden areas.

Related tutorial: How to create WooCommerce private products.

What does WooCommerce Password Protected Categories do?

WooCommerce Private Products WordPress pluginWooCommerce Protected Categories adds a password protection option to the WooCommerce Categories page (WooCommerce → Categories in the WordPress admin). It works in the same way as the password protection for pages and posts. You choose a password, and visitors must enter this password in order to access the category page.

Each WooCommerce product category can have one password. Alternatively, you can create multiple passwords for each category. This is useful if you want to create unique passwords for each category, for example.

The great thing about this plugin is that the password automatically protects all the products within the category you have protected. It also protects any sub-categories. This lets you divided up the protected area of your e-commerce store, creating a more complex navigation structure with as many products and sub-categories as you like - all protected by a single password.

The plugin also lets you mark categories as Private, so that only logged in Administrators and Editors can view them. Or if you prefer, you can restrict categories to specific logged in user accounts or user roles. These are all great ways to create WooCommerce private products within a single category.

What did people do before this plugin was released?

Previously, people wanting to create a hidden area for private products within a WooCommerce online shop would use one of the following methods.

Password protect or private WooCommerce products

You can password protect individual WooCommerce products in the same way as you can protect a standard WordPress post or page. You can also create individual WooCommerce private products. Do this via the 'Visibility' option in the 'Publish' section at the top right of the Add/Edit Product screen.

A password protected product will still appear on your main Shop page and category pages. If someone clicks on it then they will be prompted to enter a password before they can view the product.

With this option, you have to individually password protect every product that you need to hide. Or mark the product as private.

With password protected products, your customers will have to enter a password for every single product. Not very user-friendly.

With WooCommerce private products, they appear to logged in users with the correct privileges but it's a bit disjointed.

The WooCommerce Protected Categories plugin offers a more sophisticated solution because it includes a setting allowing you to hide products within private or password protected categories from the main Shop page. You can also hide private or password protected categories from your main list of categories. This means that people will only be able to find your protected products or categories if they have the link. (Or if they're logged in, with WooCommerce product categories.) This lets you have a private area of your WooCommerce shop without cluttering up your public shop pages.

Once a visitor has entered the password for a category, they will be able to view all the products within that category - and also within any sub-categories - without entering any further passwords. This is much more user-friendly than protecting each individual product.

Display products on a private or password protected page

WooCommerce Private Products WP pluginWooCommerce has lots of built-in shortcodes which can be used to display products within a page. Some themes also have options for displaying WooCommerce private products or categories on a standard page.

You can use this to create a standard page in WordPress and password protect it in the usual way or mark it as private. You can then insert the required products onto the page.

The problem with this option is that it's not very secure as there are various other ways that people can find your products. The 'hidden' products will still be visible on your main WooCommerce Shop page which lists all your products - and people can guess the address of this page even if you haven't added any links to it.

If your hidden products are in the same category as publicly available products then visitors will be able to see the hidden products on the category page. There are probably other loopholes, too.

Restrict content using a membership plugin

For a more fully featured solution, you can create a complete membership site using a WooCommerce membership plugin such as WooCommerce Memberships or Groups (with the Groups for WooCommerce add-on). With a membership plugin, each of your users will have their own login details - as opposed to a shared password for each category.

This is a good option if your users will have access to other protected content, for example a wider members area. It's also good if any of your WooCommerce categories are particularly sensitive and a shared password isn't secure enough. However it can be overkill if your requirements are more straightforward than this. WooCommerce-compatible membership plugins are also more expensive. And it's a pain to have to spend your time helping members who are having problems logging in (yes I know WordPress has a 'Lost Password' feature, but owners of membership sites still receive constant enquiries about this.)

If you really want each user to have a separate login then you can create private categories instead of a whole membership plugin. This will automatically unlock your private categories to logged in users depending on their role. It's much easier than a full membership solution.

If you need to create a private area of your shop then the WooCommerce Protected Categories plugin is a great option. It's quick and easy to set up, and automatically protects all the products within your private or password protected categories. Simple!

Create a WooCommerce age restricted store

Password Protected Categories is ideal as a WooCommerce age verification plugin. You can use a password protected category to require customers to verify their age before they can view the age restricted products within.

Is it easy to use?

Absolutely, you can literally create WooCommerce private products within a minute or two. You can read the full plugin documentation here. We've also provided a detailed video tutorial on using the password protection plugin and marking products as private.

Where can I get the WooCommerce private products plugin?

So you'd like to password protect your WooCommerce categories or make them private! You can buy the plugin from here. It's much cheaper than setting up a full membership solution and we hope it is useful for making WooCommerce private and protected.

Or if you'd rather protect your entire shop, check out our WooCommerce Private Store plugin instead.

We've also created an opportunity to earn money from recommending the plugin. Sign up to our WordPress affiliate scheme and get 30% commission for WordPress plugin sales on our site.

AdapPymntRolesApp_BOne of our WooCommerce clients recently asked us to set up her WordPress online shop to automatically pay a profit share to her business partner.

Most WordPress e-commerce websites accept payments to a single source only. Typically, a WooCommerce store will integrate with a single PayPal account, to which all payments received via the website are sent. This client wanted a percentage commission or profit share to be automatically paid to a second PayPal account for specific products only.

WordPress plugins for WooCommerce profit share or commission

We initially thought that this would involve some bespoke WordPress development work involving WooCommerce and the PayPal API. However we found several WordPress plugins that met the requirements exactly. I guess that's not surprising given that 2,500+ WooCommerce add-ons are available in 2017.

These plugins work using a feature called PayPal Adaptive Payments. It lets you split a PayPal payment (e.g. from a WooCommerce product order) to multiple recipients.

There are 3 main WordPress plugins for using PayPal to pay a profit share or commission from your WooCommerce orders:

All of these plugins do largely the same thing. They all integrate PayPal Adaptive Payments with WooCommerce. They all split PayPal payments to multiple recipients using a choice of methods. These are Chained Payments, Parallel Payments or Standard Simple Payments. (Read the plugin documentation for definitions, as it's quite complicated.)

Although all 3 plugins looked fine and had quite good reviews, we chose the official WooCommerce extension. This is because it's safer to purchase plugins from a single company. WooThemes developed both WooCommerce itself and the PayPal Adaptive Payments plugin, so if we had any problems then they would have to take responsibility and couldn't blame the other developer. This is always a possibility when you combine plugins by multiple developers. Price-wise, the official plugin was the middle of the 3 options.

Our solution

We purchased the PayPal Adaptive Payments plugin and read the documentation, which was quite complex. Chained Payments was the best method for our client as it allows the commission to be automatically sent to our client's business partner without the customer knowing that this is happening.

We set up the plugin to work with WooCommerce products in a specific category only. The customer would pay via PayPal. It would look like their PayPal payment was going a single recipient. But behind the scenes, a 'Chained Payment' effect would kick in. A percentage of the payment was sent to our client's PayPal account and a different percentage was sent to her business partner. Perfect!

What's the catch?

The only downside is that PayPal Adaptive Payments are complicated. The fact that there's a plugin available doesn't make it easy to set up. We had to do a lot of fairly technical work to set everything up correctly. This included creating a PayPal App and submitting it to PayPal for approval. There were also several hoops to jump through such as providing PayPal with details of our client's business plan. (Because they wanted to check the payments were being used suitably.)

If you have a WordPress website and want Adaptive Payments, you'll probably need a WordPress web developer or agency to set it up. It's a great option if you want to automate more complex payment arrangements with PayPal.

WooCommerce shipping rates
WooCommerce is great and is the best plugin for most WordPress e-commerce websites. However its shipping options can be quite limited.

On the face of it, WooCommerce offers a good choice of delivery and shipping options - flat rate, free shipping, international flat rate, local delivery and local pickup.

Unfortunately this isn't as good as it looks for two reasons:

  • A lot of WordPress online shops need more granular control over their shipping rates - particularly if they ship to multiple countries or regions with different postage costs.
  • As it comes, WooCommerce only shows customers the shipping cost - or even whether you will ship to their country - on the checkout page. That's a disaster for WooCommerce stores that ship internationally! Customers get incredibly frustrated to add products to their cart and then discover that you either don't ship to their country, or that the shipping cost is too high.

Fortunately, there's an excellent solution to each of these problems:

  • Solution 1 - A lot of people add more flexible international shipping costs by using YITH's Product Shipping plugin
  • Solution 2 - The WooCommerce Shipping Calculator plugin lets customers check whether you ship to their country, and calculate the cost, directly on the product page. This is a super-simple way to avoid the frustration of getting bad news on the checkout. Either use it on its own or with YITH's plugin.

How to set up Flat Rate per State/Country/Region for WooCommerce

  1. Find the 'Flat Rate per State/Country/Region for WooCommerce 'plugin in the WordPress plugin repository. (Plugins → Add New in the WordPress admin for your website). Install and activate it as usual.
  2. Go to WooCommerce → Settings → Shipping in the WordPress admin. You will see that the plugin has added a new link to the right hand side of the list of shipping options: Flat Rate per State/Country/Region.
  3. Ignore all the information about which countries belong to different regions - you probably don't need this. Scroll down to the actual plugin settings and set up the plugin as required. It's pretty self-explanatory and you can hover over the question mark icons for an explanation of each option.

Note: If you use this plugin then it will control ALL your shipping options, replacing WooCommerce's built-in Flat Rate and International Flat Rate options. This means that you need to disable Flat Rate and International Flat Rate and use the 'Flat Rate per State/Country/Region' section to add ALL your postage costs, including your domestic shipping rate and the overseas shipping. If you forget to disable the other shipping options then they will appear as alternate shipping methods in the checkout.

Flat Rate per State/Country/Region for WooCommerce screenshotAn example of how to use the plugin

Although setting up this WooCommerce shipping plugin is fairly self-explanatory, here's a screenshot showing how to set it up to achieve the following scenario:

  • Shipping cost of $6.95 per order for the United States only (this example assumes that the website is based in the US).
  • Shipping cost of $15.00 for Canada.
  • Shipping cost of $22.50 for the rest of the world.

But what about shipping to individual countries within the UK?

TheFlat Rate per State/Country/Region for WooCommerce plugin is ideal for setting separate shipping rates for each country or region. However there are times when you want to break down your shipping zones further. For example you might want to charge different postage for England, Scotland and Wales - which WooCommerce treats as a single country (United Kingdom).

Since writing this post, WooCommerce has introduced shipping zones into its core plugin. This gives extra shipping options without needing any further plugins, so it's worth experimenting with. I've written a separate post about how to charge different shipping rates for each UK country.

Let customers calculate international shipping costs on the product page

Add shipping tab to WooCommerce product page

So far, you've learned how to solve the problem of not being able to add fine-grained shipping costs per country. The second problem was how to let customers check international shipping costs without having to add products to their cart first.

You can easily solve this by installing the WooCommerce Shipping Calculator plugin. This handy plugin adds a domestic or international shipping calculator to your chosen location on the product page. That way, customers can enter their country and see the shipping cost straight away. As a result, they can make an informed decision on whether to add it to their cart.

It's your turn

We've looked at two of the best WooCommerce shipping plugins:

I'd love to hear how you use them to improve how you charge for shipping per country. Please share your experiences in the comments below.

One of our WooCommerce clients recently asked how to prevent duplicate usernames. She wanted to know what would happen if a new customer creates an account on her WordPress e-commerce online shop and tries to add a username that is already in use.

WooCommerce has features built in to prevent duplicate usernames. Since so many websites use WooCommerce, I will describe the options to help anyone else who is worried about this.

Create username based on the user's email address

How to prevent duplicate usernames in WooCommerceIf you log into the WordPress admin and go to WooCommerce > Settings > Account, you can scroll down to a section called Registration Options. This allows you to tick a box called 'Automatically generate username from customer email'.

If you tick this box then when a customer creates an account during checkout, they will automatically be given a username based on the first part of their email address. Their username is not their actual email address, as most people assume. Instead, their username is the part of their email address which appears before the @. For example if my email is info@barn2.com then my username will be 'info'.

As you can see from this example, a lot of automatically generated usernames won't be very unique - how many people have info@ email addresses?! WooCommerce detects duplicate usernames and avoids the problem by adding a number after any duplicates. For example if I create an account when there is already a user called 'info' then my username will be 'info1'.

Many WooCommerce website owners aren't keen on this option because a lot of people like to choose their username to make it easy to remember. Fortunately there is another option.

Allow WooCommerce customers to choose a username

You can untick the 'Automatically generate username from customer email' box in WooCommerce > Settings > Account Registration Options. This adds a field to your checkout page prompting customers to choose their own email address.

If a customer enters an email address that has already been chosen, WooCommerce will prevent any duplicate usernames. Instead of adding a number after the username, an error message will appear after you click the 'Submit' button. This prompts the customer to choose a different email address.

Which option is best?

As always, there are pros and cons of each option.

Some WordPress website owners like the convenience of automatically generating usernames. This is attractive because it's one less field for the customer to fill in. Research into what makes an effective online form has reliably shown that the more information the customer is asked to enter, the less likely they are to complete the process. This is a big deal on a WooCommerce website as store owners need to prevent abandoned carts and checkouts.

But for overall user-friendliness, it's nice for customers to be able to choose a username that will be easy for them to remember in future.

The decision largely depends on the purpose of your customer accounts. If customers will have little reason to log into their account in future then it's best to automatically generate their username as this speeds up the checkout process. If you want to encourage repeat business, or if customers will be logging in for many different purposes (e.g. if you offer online courses or a membership area) then they're more likely to want an easy-to-remember username. Think about your customers and choose the best option for them.

WooCommerce-bookings

In this guest post from Edward Jones, we learn how to sell digital products using WooCommerce.

Online stores are no longer confined to selling physical products only, and have expanded their reach to include digital products such as music, images, ebooks and software.

eStores allow you to reach out and deliver products to customers the instant they make payment, whereas selling physical products often means losing a significant share of your sales – paying shipping, manufacturing and distribution costs. This is where selling digital products are significantly more profitable for merchants.

Put simply, selling digital products saves store owners from going through the hassle of shipping products, resulting in greater profit margins.

What's more?

You don't have to worry about maintaining your inventory or running-out-of-stock with digital products, as they mainly comprise of files stored on your web server. This means you're selling the same files time and again. Moreover, digital products don't require customization of any kind. In contrast, physical products often require you to change their color, size or any other attribute.

The agenda of this post isn't about convincing you that digital products are a lot better compared to physical products. My purpose is to tell you that WooCommerce has made it easier to sell digital products through WordPress e-commerce web designs. WooCommerce is the world's most widely used e-commerce platform and is definitely a winner.

To be more specific, this post will help you learn how to set up WooCommerce pages in your WordPress site for selling digital products.

Step-by-Step Guide on Setting Up WooCommerce Pages to Sell Digital Products

Step 1: WooCommerce Plugin Installation and Settings Configuration

In order to sell digital products via WooCommerce, you'll first have to install and activate the WooCommerce plugin.

Once the plugin has been activated, create the WooCommerce pages. Next, configure the plugin settings for digital products that you want to sell from your WordPress website. To do this, log into your WordPress admin panel and navigate to 'WooCommerce >> Settings'. From there you'll be able to see an option 'Configure WooCommerce Settings for Digital Products' - click on it and update the following settings:

  •  General settings tab – Limit the downloadable items purchase quantity to 1
  •  Inventory settings tab – Disable stock management
  •  Shipping settings tab – Disable shipping
  • Payment Gateways settings tab – Disable the payment options: 'Direct Bank Transfer' and 'Cheque Payment'. Enable the PayPal payment option and enter your PayPal email address
  • Emails settings tab – Configure your order notification settings and customize your chosen WooCommerce email templates

Step 2: Product Categories Creation

It's best to set up your product categories prior to adding products. You can do this via 'Products >> Categories' in the WordPress admin.

Step 3: Addition of Digital Products

In the third step, you will need to add your digital products (that you need to make available for download). To do this, go to 'Products >> Add Product' (as shown in the screenshot below).

Add ProductClicking on the “Add Product” option will redirect you to the product creation form. Fill in the below fields:

  • Title
  • Long description
  • Short description
  • Select the product category
  • Set a featured image
  • Insert additional thumbnail images (if necessary)
  • Price

In order to make your digital products downloadable, scroll down to the 'Product Data' section and do the following:

  1. Go to Product Data and choose the 'Simple Product' option from the drop-down
  2. Check both the 'Virtual' and 'Downloadable' check-boxes, as shown in the below screenshot:

Virtual Downloadable WooCommerce ProductsNext, assign a value to the 'Regular Price' field. From the 'Downloadable Files' path, click on the 'Upload a File' option and copy the Link URL. Click on the Save changes button, then paste the URL of the digital product you've just uploaded into the 'File Path' field.

If required, you can choose to set an expiration date for the product download link. This will stop the products from getting downloaded after the link expires.

Step 4:  Eliminate the Sidebar on the Cart and Checkout Pages

You might want to get rid of the sidebar on your Cart and Checkout option from your WooCommerce pages. For this purpose, simply make the WooCommerce pages full width by using the following steps:

  1. Open your WordPress admin panel and go to 'Pages >> All Pages'.
  2. Click on 'Edit' in the 'Page Attributes' widget on the right-hand-side of your screen, and you’ll see a Template drop-down. From the drop-down choose “Full Width” and update the page. This will eliminate the sidebar for that page.

Understanding the Order Process

So, now that you have carried out the most crucial steps of setting up your WooCommerce pages selling your digital products, you might be interested to know how a digital product order is processed. Let's take a look at the order process:

When a customer makes payment via PayPal, any one of the following things can happen:

  • If all the items (or products) in the order are downloadable and virtual, then the order will complete
  • Or else, the order will continue processing till the time you change it

After completion of the order, or when the 'Grant access to downloadable products after payment' option is enabled, the user who has purchased the products will:

  • Be given permission to download the purchased products
  • Receive the download links for the purchased products on the order received page
  • Receive email notification that contains the download links
  • Be able to see the download links, once they are logged into their ‘My Account’ page.

Get more Sales with WooCommerce Product Tables

Your store can be reasonably successful if you set it up with the built-in layouts that come with WooCommerce and your theme. For greater success, it's worth doing some work to optimise your WooCommerce conversion rate.

The WooCommerce Product Table plugin gives you lots of flexibility about how to display your products. It lists products in a table and you can choose from dozens of options about how to present the table and what data to include. This can help to increase your sales and make your store more successful.

GET THE PLUGIN

Wrapping Up!

Apart from setting up any standard website or blogs, there are so many things that you can do with WordPress. In this post, we have discussed about how you can easily sell digital products through your WordPress e-commerce website, thanks to the WooCommerce plugin. Hopefully reading this will help you learn about the basics on how you can sell digital products by setting up WooCommerce pages.

About the Author

Edward Jones is a WordPress developer who keeps sharing his experience through his insightful blogs. Currently, he is employed with OSSMedia Ltd. - A Web Development Company. He holds an impressive amount of expertise in major CMS platforms including Drupal, WordPress, Joomla and Magento. You can go through his write-ups for gathering a greater insight into the popular CMSs available today. You can get in touch with Edward via Twitter and Google+.