This is the premium version documentation page. Click here to purchase Product Visibility by User Role for WooCommerce.


Product Visibility by User Role for WooCommerce Pro plugin lets you show/hide WooCommerce products depending on customer’s user role.


Plugin settings are located in “WooCommerce > Settings > Product Visibility”. Also to set user roles for each product, check “Product visibility” meta box on each product’s edit page.

General Options

Start by visiting “General” options section in “WooCommerce > Settings > Product Visibility by User Role > General”. Here you can choose how products should be hidden:
Hide catalog visibility
This will hide selected products in shop and search results. However, the product will still be accessible via direct link.
Default: yes
Make non-purchasable
This will make selected products non-purchasable (i.e. product can’t be added to the cart).
Default: no
Modify query
This will hide selected products completely (including direct link).
Default: no
Hide menu items
Hides nav menu items (i.e. hidden products, product categories and tags). Only products, product categories/tags marked in bulk settings will be hidden. This options uses the wp_get_nav_menu_items filter.
Default: no
Hide products terms
Hides products categories and tags from being displayed on front-end. Only categories/tags marked in bulk settings will be hidden. This options works filtering terms from get_terms() function.
Default: no
This option is useful only if Modify query is enabled. Redirects to a page different from 404, in case a product is considered invisible.
Default: None
Redirect: Redirect URL per product
This will add new “Product visibility: Redirect URL” meta box to each product’s edit page.
Default: no
Replace description
This will replace the content in the “Description” tab for the selected products.
Default: no
Replace description: Content to replace with
E.g.: <strong><a target="_blank" href="/wp-login.php">Log in</a> to see the product description.</strong>
Default: None

Per Product Options

After settings general option you can you can set included or excluded user roles for each product individually – go to product’s edit page and locate “Product visibility” meta box:

Admin Options

User roles to display in settings
Leave blank to show all available user roles.
Default: None
Admin products list column
This will add “User Roles” column to the admin products list.
Default: no
Product quick edit
This will add “User Roles” options to the product quick edit screen.
Default: no
Products bulk edit
This will add “User Roles” options to the products bulk edit screen.
Default: no

Bulk Options

Pro version also allows you to set user roles visibility options in bulk (for multiple products at once, product categories or product tags). In “WooCommerce > Settings > Product Visibility by User Role > Bulk Settings” you can set which products, product categories or tags are visible or invisible to certain role. If you fill in “Visible” option, then users with selected role will be able to see only chosen products. If you fill in “Invisible” option, then chosen products will be hidden for users with that role. If you leave any of the options empty – option will be ignored (i.e. all products will be visible).

Frequently Asked Questions

Q. I have a pagination issue: the number of products on each page turns out random depending on which products are hidden. What should I do?

A. You need to enable “Modify query” checkbox in plugin “General” settings section (in “WooCommerce > Settings > Product Visibility”).