If some of your products are not appearing on the shop page after activating WooCommerce Wholesale Prices Premium, even though they are published and in stock, there are two common causes worth checking before assuming something is broken.
This article covers the two most frequent reasons products go missing from the shop: a broken product visibility value (often caused by a bulk import) and a wholesale role restriction applied to a product or product category. It also covers basic troubleshooting steps if neither of these resolves the issue.
Requirements
- WooCommerce
- WooCommerce Wholesale Prices installed and activated.
- WooCommerce Wholesale Prices Premium installed and activated.
Cause 1: Broken product visibility meta after import
WooCommerce Wholesale Prices Premium sets a hidden visibility value on every product to determine whether wholesale customers, non-wholesale customers, or both can see it. This value is normally set automatically whenever you save a product from the product edit screen.
When products are added through a bulk import tool instead of being saved individually in the editor, this value is sometimes never set. Import tools typically insert products directly into the database rather than going through the same save process the product edit screen uses, so the visibility value can be left blank. When it’s blank, the product does not display on the shop page for anyone.
- Go to Wholesale → Settings → Help.
- Locate the Product Visibility Meta field, under the Debug Tools section.
- Click Re-Initialize Product Visibility Meta.
You can run this as many times as needed, and it is worth running after every product import. For more detail on this issue, see How to fix broken product visibility after product importing.
Cause 2: A wholesale role restriction is applied
Products can also be hidden from the shop page because of a wholesale role restriction set on the product itself or on one of its categories. This mostly affects non-wholesale customers and guests, since the restriction is designed to hide products from anyone outside the selected wholesale role(s).
Checking the product
- Go to Products → All Products and edit the affected product.
- In the Publish box, check the Restrict To Wholesale Roles: field.
- If a wholesale role is selected, the product is hidden from anyone who does not hold that role.
If the product itself has no role restriction, check its category next.
Checking the category
- Go to Products → Categories.
- Edit the category the product belongs to.
- Check the Wholesale Role Filter field.
If a wholesale role is selected here, every product in that category is hidden from anyone who does not hold that role, even if the individual products have no restriction of their own. This setting is easy to overlook since it lives on the category screen rather than the product screen, and it’s a common reason products are missing from the shop for guests and non-wholesale customers specifically.
You can read more about this feature in How to adjust visibility of wholesale products.
If products are still not showing
If you have checked both causes above and products are still missing from the shop page, try some basic debugging:
- Disable your other plugins one at a time to check for a conflict.
- Switch to a default WordPress theme temporarily to rule out a theme conflict.
Do this on a staging site rather than your live store, and take a full backup before making any changes.
Troubleshooting
Why is the Re-Initialize Product Visibility Meta button not fixing all my products?
The button re-initializes the visibility value for every simple and variable product in the store, but it does not change a product’s wholesale role restriction or category restriction. If a product is still missing after running it, check the Restrict To Wholesale Roles field on the product and the Wholesale Role Filter field on its category.
Why do products disappear from the shop right after a CSV import, but reappear when I resave them manually?
Saving a product from the product edit screen triggers the process that sets its visibility value. A CSV or programmatic import does not go through that same process, so the value is left unset until the product is saved manually or the Re-Initialize Product Visibility Meta tool is run.
I set a Wholesale Role Filter on a category, but the products still show for guests. What should I check?
Confirm the product is actually assigned to that category and that the category’s Wholesale Role Filter field has a role selected and saved. Also check whether the individual product has its own Restrict To Wholesale Roles setting, since a product-level setting works alongside the category-level one rather than replacing it.
Do administrator or shop manager accounts see restricted products?
Administrator and shop manager accounts are not subject to wholesale visibility restrictions, so they see all products regardless of the settings above. Test with a customer account or a logged-out session instead.
Frequently asked questions
Does the Re-Initialize Product Visibility Meta tool affect my pricing or wholesale role assignments?
No. It only resets the internal value used to determine whether wholesale and non-wholesale customers can see a product. It does not change prices, wholesale roles, or any other product data.
Is it safe to run the Re-Initialize Product Visibility Meta tool more than once?
Yes. It can be run as many times as needed, and running it after every bulk import is recommended.
Can I restrict a product to more than one wholesale role at a time?
Yes. Both the Restrict To Wholesale Roles field on a product and the Wholesale Role Filter field on a category accept multiple wholesale roles.
If I restrict a category, can I still make one product in that category visible to everyone?
Setting Restrict To Wholesale Roles on that specific product does not override a category restriction by removing it. Leave the category unrestricted and apply the restriction at the product level instead if you only need to restrict a subset of products in that category.
Does this affect products that are out of stock or set to draft?
No. These visibility settings only control which wholesale roles can see a published, in-stock product. Stock status and post status are handled separately by WooCommerce.
Why do only some of my imported products lose their visibility, not all of them?
This usually happens when only some products in the import are newly created, while others already existed and had a visibility value set from a previous manual save. Running Re-Initialize Product Visibility Meta resets the value for all products, new and existing.
Does this feature work with the free WooCommerce Wholesale Prices plugin?
The Restrict To Wholesale Roles and Wholesale Role Filter settings, along with the Re-Initialize Product Visibility Meta tool, require WooCommerce Wholesale Prices Premium. WooCommerce Wholesale Prices Premium also requires the free WooCommerce Wholesale Prices plugin to be installed and activated.
Help & support
We have a dedicated support team for Wholesale Suite who knows our products, WooCommerce, and the industry very well. You’re welcome to make use of their expertise at any time, worldwide.
If you are an existing customer please go to the support ticket request form and send us a message.
If you are a free plugin user, please send us a support request on the forum. We actively monitor the WordPress.org support forums for the free plugin and help our users there as best as we can.



