Plugin Wizards
B2B & wholesale

Product Visibility by Role and Country for WooCommerce

Show or hide products by customer role and country: from shop pages, search, related products, direct links and the cart.

  • Block cart and checkout
  • Classic cart and checkout
  • High-performance order storage
  • WooCommerce 9 – 11
  • WordPress 6.6 – 7.1
  • PHP 7.4+
Product Visibility · highlights

Product Visibility

  • Rules by role, country, category and product
  • Hidden from grids, search, related products and feeds
  • Direct links and the cart are blocked too
  • Works with wholesale and catalog mode

What Product Visibility does

Not every product is for every visitor. Some are for trade accounts only, some cannot be shipped to certain countries, some are for members. Product Visibility hides products from the visitors who should not see them, everywhere they could turn up, and lets everyone else shop as usual.

Product Visibility features

Rules

  • Hide products from chosen visitors, or show them only to chosen visitors
  • Pick products, products in categories, products with tags, or the whole catalogue
  • Visitors by role (including guests) and by country, on their own or together
  • Enable, disable and edit rules at any time; several rules combine

Where hidden products disappear

  • Shop, category and tag pages, search results, product blocks and shortcodes, the Store API that block themes use
  • Related products, upsells and cross-sells
  • Direct links, which show the "not found" page or redirect to a page you choose
  • The cart: hidden products cannot be added by any route, and items already in a cart are removed with a notice when a visitor's address or login changes
  • Categories and tags that a rule hides leave menus, widgets and category blocks
  • WordPress sitemaps

Country

The visitor's shipping address, then billing address, then WooCommerce geolocation (set up under WooCommerce > Settings > General). You can prefer the billing address instead.

    For you

    • Staff always see everything in the admin, and in the product and analytics screens
    • "Check as" under WooCommerce > Visibility shows what a visitor with a given role and country would miss

    How to set up Product Visibility in WooCommerce

    1. 1

      Upload the plugin to /wp-content/plugins/ or install the zip from Plugins > Add New > Upload Plugin.

    2. 2

      Activate it.

    3. 3

      Go to WooCommerce > Visibility and add a rule.

    Questions about Product Visibility

    How is the visitor's country found?

    From the shipping address if there is one, then the billing address, then WooCommerce's geolocation. Guests with no address are placed by geolocation when it is enabled in WooCommerce > Settings > General under "Default customer location".

    Can I make the whole shop members-only?

    Yes: a rule with "All products", "Show only to" and the roles you want. Guests then see an empty shop and get the not-found page or your redirect on direct links; use it with a login prompt on your redirect page.

    What happens with products already in the cart?

    When a visitor logs in, changes address or a rule changes, products they may no longer see are removed from the cart with a notice on the cart and checkout pages.

    Does a rule with both roles and countries need both?

    Yes. A visitor matches when their role is one of the roles and their country is one of the countries. Leave either empty to ignore it.

    What happens to my data if I delete the plugin?

    Products are never changed. The rules and settings are removed only if "Remove data on uninstall" is ticked.

    Product Visibility changelog

    1.0.0
    • Initial release.
    B2B & wholesale

    Wholesale Pricing

    Wholesale prices by customer role, with signup approval, hidden prices, wholesale-only products, minimum orders and tax exemption.

    View plugin

    B2B & wholesale

    Request a Quote

    Let customers request a quote for products, then send prices from the order editor and let them accept and pay online.

    View plugin

    B2B & wholesale

    Catalog Mode

    Show products without selling them: hide add-to-cart buttons and prices, show an enquiry button, for the whole store, some products or guests only.

    View plugin