A product can be published in WooCommerce and still seem to disappear from the storefront, appear in the wrong place, or remain visible to people who should not see its content. In many cases, the cause is not the product itself but the difference between catalog placement and access visibility. These are separate controls, and choosing one does not automatically configure the other.
WooCommerce offers four core catalog visibility options: Shop and search, Shop only, Search only and Hidden. They determine where customers can discover a published product. A separate visibility choice—Public, Password protected or Private—determines who can view the product content. Understanding both groups makes it easier to configure curated catalogs, URL-accessible products, controlled previews and restricted storefront content without treating a hidden product as fully private.
What WooCommerce Product Catalog Visibility Controls
Catalog visibility controls the normal storefront locations in which a published product is listed. Depending on the selected option, the product may appear on the shop page, category pages, internal search results, or none of these catalog surfaces. This is a placement decision: it controls discovery through listings rather than defining every possible way a visitor can access the product page.
The four core options are:
- Shop and search: the product can appear on shop pages, category pages and search results.
- Shop only: the product appears on shop and category pages but is excluded from search results.
- Search only: the product appears in store search results but not on shop or category pages.
- Hidden: the product is removed from normal shop, category and search listings while remaining accessible through its individual product page URL.
These settings should not be confused with product access visibility. A Public product is accessible without restrictions. A Password protected product requires a password to view its content. A Private product can be viewed only by site Administrators and Editors after publication. Therefore, Hidden does not mean private: it changes catalog placement but preserves the individual product page as a direct access point.
Catalog visibility also should not be treated as a complete search-engine indexing control. It governs storefront listings, while external indexing can depend on separate site, SEO-plugin and crawler settings. Similarly, the exact front-end result can be affected by the theme, product blocks, custom templates, caching systems or third-party search tools.
Shop and Search vs Shop Only vs Search Only vs Hidden
The right choice depends on how customers should discover the product. Shop and search is the normal option when a product belongs in the complete storefront experience. It allows visitors to find the product while browsing the shop or a category and while using store search.
Shop only is useful when browsing should expose the product but internal search should not. Search only reverses that arrangement: the product can be returned by store search but does not appear in the regular shop or category listings. Hidden removes the product from all three normal listing types, but it does not remove the individual product page URL.
| Catalog visibility | Shop and category pages | Store search | Direct product URL |
|---|---|---|---|
| Shop and search | Included | Included | Product page available according to access visibility |
| Shop only | Included | Excluded | Product page available according to access visibility |
| Search only | Excluded | Included | Product page available according to access visibility |
| Hidden | Excluded | Excluded | Product page remains accessible according to access visibility |
For a curated catalog, start by identifying the intended discovery surface rather than by asking whether the product should be “visible” in general. A product meant to be browsed belongs in Shop and search or Shop only. A product intended to be found through a specific store query may use Search only. A product shared through a direct URL can use Hidden, provided direct access is acceptable.
These choices do not guarantee identical behavior in every custom display. Shortcodes and product display components may filter products by values such as visible, catalog, search and hidden. A theme or third-party search tool may also apply its own logic, so the selected setting should always be checked on the actual storefront.
How to Hide a Product from the Catalog but Keep Its Product Page
To make a published product available through a direct URL without showing it in normal catalog listings, edit the product and locate the Catalog visibility control in the Publish panel. Select Hidden, then save or update the product.
The expected WooCommerce behavior is that the product disappears from shop pages, category pages and store search results. Its individual product page remains accessible through the direct URL. This creates a useful separation between ordinary catalog discovery and deliberate URL sharing. However, it is not a complete privacy or security mechanism. Anyone who has the URL may still be able to reach the product page, subject to the product’s separate access visibility setting.
After updating the product, verify the result rather than relying on the administrator view. Open the shop page, relevant category pages and internal search as a logged-out visitor. Then open the direct product URL in the same type of browser session. Check any custom product grid, shortcode-based display or product block as well. If an old listing remains visible, cached output may be involved, or a custom component may not be applying the setting in the same way as the main catalog.
Password Protected vs Private Products
Password protection and private visibility answer a different question from catalog placement: who is allowed to view the product content? Use Password protected when the product page should remain available to visitors who know a shared password. This can fit a controlled demo or limited preview in which selected visitors receive the password.
A Password protected product can remain present in the catalog while requiring the password to view its content. Whether it appears in shop pages, categories or search still depends on its catalog visibility choice. For example, Password protected and Hidden combine two controls: the product is absent from normal listings, while a visitor with the direct URL must provide the password to view the content.
Private is more restrictive. After publication, a private product can be viewed only by site Administrators and Editors. It is therefore not the same as a shared-password page for selected visitors. It is also not an alternative name for Hidden: Hidden controls placement in the catalog, while Private limits who can view the product.
If the requirement involves customer roles, memberships, wholesale accounts or confidential customer data, neither core setting should be presented as a complete replacement for a dedicated access-control model. WooCommerce Memberships has a separate restriction model. Its settings can determine whether restricted products are hidden from archives, remain directly accessible to authorized users, or become unavailable through direct access. That model should not be conflated with core catalog visibility.
Why a Published Product Is Missing from the Shop or Search
When a product is missing, begin with the simplest checks and move toward the display configuration. A product in Draft or Pending review status is not available to customers as a published product. Confirm that the product status is Published before investigating catalog placement.
Next, inspect the product’s Catalog visibility setting. Hidden intentionally excludes the product from shop, category and search listings. Shop only intentionally excludes it from search, while Search only intentionally excludes it from shop and category pages. A product may therefore be working exactly as configured even when the selected surface is not the one being checked.
If the product-level setting is correct, review the shop and category page configuration. WooCommerce can configure those pages to display products, categories or both, so the page may not be presenting products in the way you expect. The product’s order can also be affected by the configured default sorting, meaning that a product may be present without appearing near the top of the page.
Custom displays require another check. Inspect product shortcodes, product blocks and custom grids for visibility filters such as:
visible, which may request products intended for normal visible catalog output;catalog, which may request products placed in catalog views;search, which may request products intended for search results;hidden, which may request products specifically marked as hidden.
Finally, consider the theme, custom templates, caching systems and third-party search tools. WooCommerce documentation does not establish that every such component honors catalog visibility identically. Clear the relevant cached output where appropriate and test the storefront as a visitor. The exact cause may depend on the site’s configuration and extensions, so avoid treating one explanation as universal.
Testing Checklist Before Making a Product Available
Visibility changes should be validated from the same perspectives your visitors use. Administrator screens can show information that is not available to ordinary customers, and a product’s intended catalog placement may not be reflected by every custom component.
- Confirm that the product status is Published, not Draft or Pending review.
- Record the intended catalog placement: Shop and search, Shop only, Search only or Hidden.
- Check the shop page and the relevant category pages as a logged-out visitor.
- Use internal store search and confirm whether the result matches the selected visibility option.
- Open the individual product URL directly in a logged-out browser.
- Where relevant, test as a logged-in customer and verify the expected password prompt or restricted-access behavior.
- Review custom product grids, shortcodes, blocks, theme templates and cached pages.
- Compare the actual result with the intended combination of catalog placement and access visibility before sharing the product.
This process helps separate a product setting from a page configuration or custom display issue. It also reduces the risk of assuming that a Hidden product is unavailable to anyone who obtains its URL, or that a Password protected product is limited to administrators and editors.
WooCommerce product catalog visibility works best when treated as a discovery decision, not as a single privacy switch. Choose Shop and search, Shop only, Search only or Hidden according to where customers should find the product. Then choose Public, Password protected or Private according to who should view its content, and use a separate restriction model when the requirement is more specific.
After every change, test shop, category, search and direct URL behavior as a visitor. If you need additional tools for configuring or extending your website, Explore our WordPress plugins, WooCommerce extensions, themes and membership plans to find the right tools for your website.