Can we enable WooCommerce Catalog Mode without Plugin? If yes, How?

Are you looking to transform your WooCommerce store into a product catalog without using a plugin?

Many store owners need a catalog mode to showcase products without allowing direct purchases. This can be useful for wholesalers, businesses under maintenance, or those offering request-based pricing. While plugins like ELEX WooCommerce Catalog Mode, Wholesale & Role Based Pricing provide a quick solution, enabling WooCommerce catalog mode without a plugin is entirely possible with custom code.

In this guide, Let’s explore how to hide the “Add to Cart” button, remove prices, and disable checkout—all without installing additional plugins!

 

WooCommerce Catalog Mode

What is WooCommerce Catalog Mode?

Catalogs are an effective way of showcasing products on a page while withholding the price. They contain depictions of products, along with their images, titles, and prices, and can be used to invite customers to individual sites and generate leads for eStores. Catalog management is the process of organizing and managing a catalog of products or services, which is a crucial part of e-commerce businesses. It involves creating and maintaining product descriptions, setting prices, and managing inventory levels.

Effective catalog management systems can help businesses boost sales or conversions and improve the customer experience by keeping track of their products or services, ensuring that pricing is up-to-date and accurate, and streamlining the ordering process. Catalog management tools are designed to store, retrieve, perform, and optimize the omnichannel maintenance of e-commerce product catalogs while structuring them according to a range of factors such as

  • Product names,
  • Descriptions,
  • Prices,
  • Suppliers,
  • Hierarchy,
  • SKUs,
  • And all other product details.

Why Use WooCommerce Catalog Mode?

WooCommerce catalog mode is useful for various business scenarios, including:

  • Wholesale and B2B Stores
    Allowing only registered users or approved buyers to make purchases.
  • Showcasing Products Without Direct Sales
    Ideal for businesses that want to display products without immediate purchasing options.
  • Pre-Launch or Maintenance Mode
    Useful when your store is under development or updating products.
  • Request-a-Quote Functionality
    Encourages customers to inquire about pricing and negotiate deals instead of making instant purchases.
  • Restricting Purchases for Specific User Roles
    Helps in controlling access based on customer type, region, or membership level.

How to Enable WooCommerce Catalog Mode Without a Plugin

By refining a little bit of code, you can enable WooCommerce Catalog Mode without any hurdles. Here are the steps to follow:

Hide the ‘Add to Cart’ Button

The first step in enabling catalog mode is removing the ‘Add to Cart’ button. You can achieve this by adding the following code to your theme’s functions.php file:

function remove_add_to_cart_button() {

    remove_action('woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10);

    remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30);

}

add_action('wp', 'remove_add_to_cart_button');

Remove Add to cart

Hide Product Prices

If you want to remove prices from your store, use the following snippet:

function hide_product_price() {

    remove_action('woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10);

    remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_price', 10);

}

add_action('wp', 'hide_product_price');

Hide price for Woocommerce catalog mode

Disable Checkout Page

To prevent customers from proceeding to checkout, add this code:

function disable_checkout_page() {

    if (is_checkout() && !is_user_logged_in()) {

        wp_redirect(home_url());

        exit;

    }

}

add_action('template_redirect', 'disable_checkout_page');

hide checkout pages

Additional Customizations for a Better Catalog Experience

Replace the ‘Add to Cart’ Button with ‘Request a Quote’

Instead of just removing the button, replace it with a custom message:

function replace_add_to_cart_with_custom_text($button) {

    return '<a href="/contact" class="button">Request a Quote</a>';

}

add_filter('woocommerce_loop_add_to_cart_link', 'replace_add_to_cart_with_custom_text');

Request a quote

Last Shot

WooCommerce catalog mode is beneficial for stores that need a product showcase without immediate purchases. While plugins make the process easier, manually enabling catalog mode is entirely feasible with the right customizations. 

By adding simple PHP functions, you can hide the ‘Add to Cart’ button, remove prices, disable checkout, and even customize user interactions without relying on external tools. If you ever need more flexibility, consider using a plugin for additional features like role-based pricing and advanced catalog customization.

Do you want a hassle-free way to enable WooCommerce catalog mode? Let us know your thoughts in the comments!

FAQ’S

  1. Can I enable WooCommerce catalog mode without coding?
    Yes, you can use plugins like ELEX WooCommerce Catalog Mode or YITH Catalog Mode to enable catalog mode without touching code.
  2. Will enabling catalog mode affect SEO?
    No, as long as your product pages remain indexed and accessible, your SEO rankings won’t be negatively impacted.
  3. Can I still track inventory while in catalog mode?
    Yes, inventory tracking remains active even when checkout is disabled.
  4. Will these changes work with all themes?
    Most themes should work with these customizations, but some highly customized themes may require additional adjustments.
  5. Will hiding prices affect SEO?
    No, hiding prices won’t impact SEO as long as your product pages remain indexed by search engines.
  6. Can I enable catalog mode for specific user roles only?
    Yes, with custom coding, you can restrict catalog mode for specific user roles using conditional logic.
  7. How can I enable the cart and checkout again?
    To revert to normal mode, simply remove the added code snippets from your functions.php file.
  8. What if I make a mistake in the code?
    If you encounter errors, restore a backup or use an FTP client to edit your functions.php file manually and remove the faulty code.

Further Reading

Popular Tags

Blog Business Case Code Snippet Documentation ELEX Address Validation & Google Address Autocomplete Plugin for WooCommerce ELEX Amazon Payments Gateway for WooCommerce ELEX Authorize.net Payment Gateway for WooCommerce ELEX Bulk Edit Products, Prices & Attributes for WooCommerce ELEX Dynamic Pricing and Discounts Plugin for WooCommerce ELEX EasyPost Auto-Generate & Email Labels Add-On ELEX EasyPost Shipping Method Plugin for WooCommerce ELEX Google Product Feed Plugin ELEX Hide WooCommerce Shipping Methods Plugin ELEX ShipEngine Multi-Carrier Shipping & Label Printing Plugin for WooCommerce ELEX Stamps.com Shipping Plugin with USPS Postage for WooCommerce ELEX Stamps.com USPS Auto-Generate & Email Labels Add-On ELEX WooCommerce Abandoned Cart Recovery with Dynamic Coupons ELEX WooCommerce Australia Post Bulk Label Printing Add-On ELEX WooCommerce Australia Post Shipping Plugin with Print Label & Tracking ELEX WooCommerce Catalog Feed for Facebook & Instagram ELEX WooCommerce Catalog Mode, Wholesale & Role Based Pricing ELEX WooCommerce Choose Your Delivery Date Plugin ELEX WooCommerce DHL Express / eCommerce / Paket Shipping Plugin with Print Label ELEX WooCommerce DHL Express Bulk Label Printing Add-On ELEX WooCommerce Discount per Payment Method Plugin ELEX WooCommerce EasyPost Bulk Label Printing Add-On ELEX WooCommerce EasyPost Return Label Add-On ELEX WooCommerce Name Your Price Plugin ELEX WooCommerce Product Price Custom Text (Before & After Text) and Discount Plugin ELEX WooCommerce Stamps.com Bulk Label Printing Add-On ELEX WooCommerce USPS Shipping Plugin with Print Label ELEX WooCommerce Request a Quote plugin for WooCommerce ELEX WordPress Embed YouTube Video Gallery ELEX WordPress Embed YouTube Video Gallery Plugin FAQ Getting Started Knowledge Base Open Source HelpDesk & Customer Support Ticketing System – Simple & Flexible Plugin Integrations ReachShip WooCommerce Multi-Carrier & Conditional Shipping Plugin Shipping Plugins Uncategorized WooCommerce WSChat - WordPress Live Chat Plugin WSDesk - WordPress Helpdesk Plugin