Catalog Visibility Options

Catalog Visibility Options transforms your WooCommerce store into a catalog by giving you the option to disable all eCommerce functionality. This includes changing the “Add to Cart” and “Buy Now” buttons as well as disabling the regular checkout and cart processes.
  • Showcase your product images and descriptions while finalizing prices, stock or payment gateway setups
  • Toggle product visibility on a product, category, user role or user location basis
  • Change text used on regular WooCommerce “Add to Cart” buttons when Catalog Visibility is active
  • Switch between an active online store and a static product catalog

Installation

↑ Back to top
  1. Download the .zip file from your WooCommerce account.
  2. Go to: WordPress Admin > Plugins > Add New and Upload Plugin with the file you downloaded with Choose File.
  3. Install Now and Activate the extension.
More information at: Install and Activate Plugins/Extensions.

Setup and Configuration

↑ Back to top
For settings that affect your entire site, go to: WooCommerce > Settings > Visibility Options. CatalogVisibilitySettings This section has several options. Purchases:
  • Enabled – Purchases are allowed as expected.
  • Disabled – Purchases are disabled for all users (whether they’re logged in or not). This setting disables all “Add to Cart” functionality. If you’d like to change the text used on the “Add to Cart” buttons, please refer to the section below entitled Catalog Add to Cart Button Text.
  • Enabled for Logged In Users – This is similar to “Disabled” as described above except that the “Add to Cart” functionality will continue to work for logged in users.
Prices:
  • Enabled – Prices are displayed as expected.
  • Disabled – Hides all prices, for all users, across the entire store on the front end. If you’d like to display a custom message or login form, please refer to the section below entitled Catalog Price Text.
  • Enabled for Logged in Users – This is similar to “Disabled” as described above except that the prices will be visible for logged in users.
When prices are disabled, or enabled for logged in users only, all “Add to Cart” functionality is automatically disabled.
Catalog Add to Cart Button Text:
  • Optional text to display in place of “Add to Cart” button when purchases are disabled entirely or when enabled for logged-in users only.
Catalog Price Text:
  • Optional text to display in place of the price when prices are disabled, or enabled only for logged-in users.
Alternate Content: Optional content that can be used on the single product details page when prices or purchases are disabled or enabled only for logged-in users. Useful for displaying ordering details, or a log-on form if requiring user authentication before sales are allowed.

Location Filter Options

↑ Back to top
Location filter options allow store owners to display different products based on the user’s country. To configure this section, go to: WooCommerce > Settings > Visibility Options. locationfilteroptions This section has several options. Location Filter Functionality
  • Enabled – Geolocation is active and catalogue visibility will be based on the users location
  • Disabled – Geolocation is inactive prices will be displayed as per normal
Location Selection Page
  • Where users are able to set/change their location. The page is automatically added upon installation of the plugin and should contain the [location_picker] shortcode. Available countries are the same countries you enabled for WooCommerce under WooCommerce > Settings > General.
Location Selection Requirements
  • Require users to select a location
  • Location selection is optional
Allow Changes to Location Selection
  • Allow users to change location after selection
  • Users cannot change location after initial selection
Use Geo Location
  • Use geo location – Only relevant for WooCommerce versions newer than 2.3
  • Do not use geo location – Used by default for the latest version of WooCommerce
Clear cart when location changes
  • Clear cart when location changes
  • Do not clear cart when location changes

Product Category Settings

↑ Back to top
With Catalog Visibility Options, you have the ability to restrict visibility of products based on user role. To configure visibility on a per product category basis:
  1. Go to: WooCommerce > Products > Categories.
  2. Select Show to Specific RolesOnce selected, a new section appears, which allows you to tick the boxes of user roles that can see products in the category.
  3. Save changes.
Note: “Guest” is not a considered a role: These are regular users visiting your website that are not logged in. This plugin can hide for that role, but it isn’t meant to modify their capabilities beyond that.
Catalog Visibility Product Category Settings

Product Settings

↑ Back to top
Product visibility can also be set on a per-product basis.
  1. Go to: WooCommerce > Products.
2. Select a product to apply restrictions.
  1. Find the Restrictions tab in the Product Data metabox. 
  1. Select for each option — Category, Everyone or Specific Roles:
  • Who can view this product
  • Who can purchase this product
  • Who can view prices
  • Category settings – Settings from the category will be applied to the product as assigned.
  • Everyone
  • Specific roles – Allows you to set which user roles can see this product.
Note: If product is assigned to multiple categories, the first category alphabetically will take precedence.

Shortcodes

↑ Back to top
Catalog Visibility Options also includes shortcodes to build alternate catalog prices, alternate Add to Cart buttons, and additional single product details. Logon Link Used to automatically generate a link to your “My Account” page. To add this link to a page, post or product of choice, use shortcode:
[woocommerce_logon_link]
Register Link Used to automatically generate a link to your “My Account” page. To add this link to a page, post or product of your choice, use shortcode:
[woocommerce_register_link]
Password Reset Used to automatically generate a link to your “Lost Password” page. To add this link to a page, post or product of your choice, use shortcode:
[woocommerce_forgot_password_link]
Logon Form Displays a login form on a page, post or product of your choice. To add this, use shortcode:
[woocommerce_logon_form]

Useful Snippets

↑ Back to top
Note: We are unable to provide support for customizations under our Support Policy. If you cannot get the code to work, consider purchasing the extension or contact a WooExpert.

Change the “Add to Cart” button text using a filter

↑ Back to top
You can use the filter catalog_visibility_alternate_add_to_cart_button to insert any content you require:
add_filter('catalog_visibility_alternate_add_to_cart_button', 'my_alternate_button', 10, 1);

function my_alternate_button($content) {
  return 'My Alternate Content';
}

Replace the price with custom HTML using a filter

↑ Back to top
You can use the filter catalog_visibility_alternate_price_html to insert any HTML you require:
add_filter('catalog_visibility_alternate_price_html', 'my_alternate_price_text', 10, 1);

function my_alternate_price_text($content) {
  return 'My Alternate Content';
}

FAQ

↑ Back to top

Why is my cart icon still in the navigation menu?

↑ Back to top
This plugin only removes the functionality to purchase items in your store. It does not hide the cart icon; Depending on the theme you’re using, you might have to add some custom CSS to hide the cart icon.

Why can people still add to cart on the main store page?

↑ Back to top
If AJAX is enabled for the “Add to Cart” button, the product still gets added to the cart. Changing the text does not change its functionality.
  • Example: If you add Read More as text to the button, AJAX still adds a product to the cart.
Turn off AJAX in WooCommerce > Settings > Products > Product Options Screen Shot 2014-12-05 at 16.54.17  

Why are store pages still visible on the sitemap, even if I do not have cart functionality?

↑ Back to top
The pages that WooCommerce creates during installation remain visible (like on your sitemap). Do not delete these pages; you might need them in the future. Instead, you can use a plugin like Yoast SEO to set the page so it won’t appear on your sitemap.

How can I change the prices shown for various roles or logged-out customers?

↑ Back to top
The Catalog Visibility Options extension only affects the visibility of the product, not the actual prices. To display different prices for different users, you should consider using our Dynamic Pricing extension.

Questions & Support

↑ Back to top
Have a question before you buy? Please fill out this pre-sales form. Already purchased and need some assistance? Get in touch the developer via the Help Desk.
Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.