1. Home
  2. Knowledge Base
  3. WooCommerce Wholesale Order Form
  4. Display Style
  5. How To Hide/Disable The Add To Cart Button Based On Product Type

How To Hide/Disable The Add To Cart Button Based On Product Type

If you’re looking for a way to restrict your wholesale user from purchasing products with a specific product type, for example, you want to prevent them from purchasing simple products, variable products or even product bundles, you can do that by using a custom snippet.

The snippet below is an example to hide the add to cart button on the product and product catalog page. It checks if the logged in user is a wholesale customer based on the wholesale role key and if it is a simple product. Then it hides/disables the add to cart button.

 

add_action('wp','wwp_remove_add_to_cart_on_product_type', 99);

function wwp_remove_add_to_cart_on_product_type() {
global $current_user;
$product = wc_get_product();

if (isset($current_user) && class_exists('WWP_Wholesale_Roles')) {
$wwp_wholesale_roles = WWP_Wholesale_Roles::getInstance();
$wwp_wholesale_role = $wwp_wholesale_roles->getUserWholesaleRole();

//Checks if the logged in user is wholesale_customer
if (!empty($wwp_wholesale_role) && in_array('wholesale_customer', $wwp_wholesale_role)) {

// Change the product type, in this example it is 'simple' for simple products
if ( $product instanceof WC_Product && $product->is_type( 'simple' ) ) {
// This filter will disable the add to cart button
add_filter( 'woocommerce_is_purchasable', '__return_false');
}
}
}
}

 

If you wish to hide these products from your WooCommerce Wholesale Order Form, you’ll need to do an additional step to hide them. You can go to  WooCommerce > Settings > Wholesale Ordering > Filters, and add the products in the Exclude Product Filter.

 

Exclude Product Filter, WooCommerce Wholesale Order Form
Was this article helpful?

Related Articles

Need Support?

Can't find the answer you're looking for?
Contact Support