外掛說明
Katalog Visibility for WooCommerce gives store owners granular control over which product categories appear on the main Shop page — without affecting visibility anywhere else on the site.
Products in hidden categories remain fully accessible through:
- Their own category archive pages (e.g.
/product-category/wholesale/) - Direct product URLs
- Search results (configurable)
- Cart, checkout, and all other WooCommerce pages
Use Cases
- Wholesale / trade-only products — keep them off the public Shop page but accessible via direct links shared with trade customers.
- Coming soon collections — prepare categories ahead of launch without exposing them to casual shoppers.
- Funnel-based selling — drive traffic to specific landing/category pages instead of the Shop page.
- Members-only products — pair with the developer filter to show/hide categories based on user role.
Features
- Multi-select category picker — searchable Select2 dropdown listing all product categories including nested subcategories.
- Selective hiding — only the main Shop page is affected; category archives always show all their products.
- Optional search exclusion — toggle to also hide selected categories from frontend search results.
- Optional tag archive exclusion — toggle to also hide selected categories from product tag archive pages.
- Per-product override — “Force show on Shop page” checkbox on individual products to override category-level hiding.
- Debug logging — enable debug mode to log excluded category and product IDs to WooCommerce Status Logs.
- Developer-friendly —
wsvc_hidden_categoriesfilter allows programmatic control (e.g. role-based visibility). - Safe query merging — appends to existing
tax_querywithout overriding other plugins’ filters. - HPOS compatible — fully compatible with WooCommerce High-Performance Order Storage.
- Lightweight — no external dependencies, no custom database tables, no frontend assets.
Developer Filter Example
Show hidden categories to wholesale users:
add_filter( 'wsvc_hidden_categories', function ( $hidden ) {
if ( current_user_can( 'wholesale_customer' ) ) {
$wholesale = get_term_by( 'slug', 'wholesale', 'product_cat' );
if ( $wholesale ) {
$hidden = array_diff( $hidden, array( $wholesale->term_id ) );
}
}
return $hidden;
} );
螢幕擷圖


安裝方式
- Download the plugin zip file.
- In your WordPress admin, go to Plugins Add New Upload Plugin.
- Upload the zip file and click Install Now.
- Activate the plugin.
- Navigate to WooCommerce Settings Products Katalog Visibility.
- Select the categories you want to hide from the Shop page and save.
Alternatively, upload the extracted katalog-visibility-for-woocommerce folder to /wp-content/plugins/ via FTP and activate from the Plugins screen.
常見問題集
-
Yes. Hiding only applies to the main Shop page. Category archive pages always display all their products normally.
-
Yes. Direct product URLs are never affected. Hidden products remain fully accessible via their permalink.
-
Does this affect the admin dashboard or WooCommerce REST API?
-
No. Filtering only applies to frontend WooCommerce product queries. Admin, REST API, cart, and checkout are never modified.
-
Can I hide products from search results too?
-
Yes. Enable the “Also hide from search results” toggle in the settings.
-
Can I override hiding for a specific product?
-
Yes. Edit the product and check the “Shop Visibility Override” checkbox under the General tab. That product will appear on the Shop page even if its category is hidden.
-
Is this compatible with WooCommerce HPOS?
-
Yes. The plugin declares full compatibility with High-Performance Order Storage.
-
Does this work with other plugins that modify product queries?
-
Yes. The plugin safely merges its exclusion into the existing tax_query rather than replacing it, so other plugins’ query modifications are preserved.
使用者評論
這個外掛目前沒有任何使用者評論。
參與者及開發者
變更記錄
1.0.0
- Initial release.
- Multi-select category hiding from Shop page.
- Optional search result exclusion.
- Optional product tag archive exclusion.
- Per-product “Force show on Shop page” override.
- Debug logging to WooCommerce Status Logs.
wsvc_hidden_categoriesdeveloper filter.- HPOS compatibility declared.
