Product Visibility by User Role for WooCommerce plugin lets you show/hide WooCommerce products depending on customer’s user role.
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 product still will be accessible via direct link.
- Make non-purchasable
- This will make selected products non-purchasable (i.e. product can't be added to the cart).
- Modify query
- This will hide selected products completely (including direct link).
After that you can you can set included or excluded user roles for each product individually – go to product’s edit page and locate “Visibility by User” meta box.
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).
Free vs Pro
|Free Version||Pro Version|
|Hide product's catalog visibility|
|Make product non-purchasable|
|Hide product completely|
|Set each product's user roles|
|Set each user role's products (in bulk)|
|Set each user role's product categories|
|Set each user role's product tags|