Description
WDOnline Catalog Visibility for WooCommerce provides one clear overview of your product category visibility rules.
- Hide category names from automatic category lists and product category labels.
- Independently hide products assigned to a category.
- Choose Shop, Archives and Search separately for each rule.
- Optionally block direct product URLs with a normal 404 page.
- Optionally apply a category’s rule to all subcategories.
- See saved effective status, including inherited rules.
- Select multiple rows and apply bulk actions.
- Search categories and edit 50 rows per page without overwriting other pages.
- View visibility status under Products > Categories.
- Includes a translation template compatible with Loco Translate.
Nothing is hidden on first activation. Direct product access remains available by default. Enable Block direct product access on a hiding rule to return a 404 page for matching product URLs. Categories and product assignments are never deleted or changed.
Supports standard WooCommerce catalog queries, product shortcodes, server-rendered Product Collection and product Query Loop blocks, legacy WooCommerce product grids and public Store API product lists. Custom third-party queries, external search indexes and manually added menu links require separate integration.
Block direct product access only takes effect when Hide products is enabled. It follows Include subcategories and hides products assigned to any blocked category. Administrators and shop managers with manage_woocommerce can use the product editor Preview link. Ordinary direct URLs are blocked for everyone. This does not prevent adding a known product ID to the cart. Clear page and CDN caches when changing rules.
Shop rules also apply to product grids on ordinary pages. On product category and tag pages those grids follow Archives; on search pages they follow Search. Store API product lists follow Search when a search is supplied, Archives when a category or tag filter is supplied, and Shop otherwise. Store API category lists respect Hide category. Collection-data counts and third-party facet counts are not filtered and may include hidden products.
The built-in WooCommerce Hidden setting still applies. Showing a category here does not override WooCommerce’s own product visibility setting.
Visit the WD Online plugin page for more information.
Privacy and diagnostics
This plugin sends no telemetry or diagnostic information externally. It has no dependency on a diagnostics plugin. A separate support tool can request version, dependency status, rule count and option validity through the wdonline_support_diagnostics_reports filter. Reports contain no customer, order, email, IP or secret data.
Support WD Online
Enjoying WDOnline Catalog Visibility for WooCommerce? You can help support its continued development.
Support via PayPal or card: https://www.paypal.com/ncp/payment/NKERMAVC4PXML
Installation
- Install and activate WooCommerce.
- Upload the ZIP under Plugins > Add New Plugin > Upload Plugin.
- Activate WDOnline Catalog Visibility for WooCommerce.
- Open Products > Catalog visibility.
- Select category rules and click Save changes.
FAQ
-
What is the difference between Hide category and Hide products?
-
Hide category removes the category from automatic category lists and category labels on products. It does not hide products. Hide products excludes assigned products from the selected catalog locations.
-
Can I hide products from Shop but keep them on category pages?
-
Yes. Enable Hide products and Shop, and leave Archives unchecked. Search is independent.
-
Yes. Direct product links remain available unless Block direct product access is enabled on a Hide products rule. That option returns a 404 page for matching product URLs and public Store API detail endpoints. Shop managers can still use the product editor Preview link. Cart, checkout, order management and WooCommerce’s authenticated management API are unaffected. This option is not a purchase restriction or a replacement for private product access control.
-
What happens when a product belongs to several categories?
-
A hiding rule in any assigned category wins for that location. A visible category cannot override another hiding rule.
-
How do subcategory rules work?
-
Include subcategories applies both hiding flags and chosen locations to descendants. Descendant rules can add restrictions but cannot remove restrictions inherited from an ancestor. Uncheck Include subcategories on the ancestor to stop inheritance.
-
Why can I still see a category link?
-
Manually configured navigation links and hard-coded theme links are not automatic category lists. Direct category URLs remain available.
-
What do bulk actions do?
-
Bulk actions affect selected rows on the current page. Apply and save also saves all edited rows on that page. Hide products preserves the selected locations; if none are selected it enables all three. Reset rules restores the default row. Show categories and Show products remove that row’s corresponding rule, but inherited hiding rules still apply.
-
Do settings survive updates and deactivation?
-
Yes. Deactivation and updates preserve rules. Deleting the plugin removes its own rules, including on multisite, without deleting products or categories.
-
Do I need to clear caches?
-
The plugin clears WooCommerce product transients when saving. Clear any page cache, CDN cache or separate search index after changing rules.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“WDOnline Catalog Visibility for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “WDOnline Catalog Visibility for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.1.9
- Add the WD Online product page as Plugin URI.
1.1.8
- Add the WD Online product page link to the plugin description.
1.1.7
- Remove manual text-domain loading and rely on WordPress automatic translation loading.
1.1.6
- Remove Plugin URI and retain the developer profile as Author URI to avoid duplicate URI headers.
1.1.5
- Disable Block direct product access unless Hide products is selected in the same row.
- Clear the direct-access checkbox when Hide products is deselected.
1.1.4
- Use the WD Online WordPress.org profile for Plugin URI and Author URI pending directory approval.
1.1.3
- Move the rules page to Products > Catalog visibility and redirect previous settings links.
- Validate submitted category IDs, rule flags and bulk actions before changing saved settings.
- Sanitize navigation parameters and apply a final HTML allowlist to returned category links.
- Add diagnostic error code WDO-CV-0004 for malformed rule submissions.
1.1.2
- Correct the WordPress Tested up to header to use the major release number 7.1.
1.1.1
- Keep category table headings visible while scrolling.
- Make the explanations collapsible and remember each user’s choice in the same browser.
- Use a scrollable table with sticky headings when the table is wider than the screen.
1.1.0
- Move settings to WooCommerce > Settings > Products > Catalog visibility.
- Add optional per-category direct product access blocking with a theme 404 page.
- Apply direct access blocking to public Store API detail endpoints and variations.
- Preserve existing rules and keep direct blocking disabled until explicitly enabled.
- Retain legacy settings bookmarks through redirection.
1.0.0
- Initial release with independent category and product hiding.
- Per-category location selection, subcategory inheritance, bulk actions and saved effective status.
- Standard catalog, shortcode, product block and public Store API list support.
- Optional privacy-safe diagnostic report integration.


