Taniya Silhi
Taniya Silhi

Reputation: 84

Hide "Add to cart" button when the product price is zero

I have an event based WordPress website on that I sell tickets using WooCommerce. Is there any way to hide the "add to cart" button for the product having cost zero?

Thanks.

Upvotes: 3

Views: 8006

Answers (3)

Р. Р.
Р. Р.

Reputation: 95

This may be a suitable solution according to the documentation

woocommerce_is_purchasable – filter Function name: WC_Product::is_purchasable is_purchasable() — Returns false if the product cannot be bought.

Reference

function remove_add_to_cart_on_0 ( $is_purchasable, $product ){
    if( $product->get_price() == 0 ) {
        return false; }
    else {
        return $is_purchasable; }
}
add_filter( 'woocommerce_is_purchasable', 'remove_add_to_cart_on_0', 10, 2 );

Upvotes: 2

Arpan Sagar
Arpan Sagar

Reputation: 164

This code work like charm in function.php using this two filter.

add_filter('remove_add_to_cart', 'my_woocommerce_is_purchasable', 10, 2);
function remove_add_to_cart($is_purchasable, $product) {
        if( $product->get_price() == 0 )
            $is_purchasable = false;
            return $purchasable;   
}


function remove_add_to_cart_on_0 ( $purchasable, $product ){
        if( $product->get_price() == 0 )
            $purchasable = false;
        return $purchasable;
    }
add_filter( 'woocommerce_is_purchasable', 'remove_add_to_cart_on_0', 10, 2 );

Upvotes: 0

SNS
SNS

Reputation: 483

You write this code in your theme function.php

function remove_add_to_cart_on_0 ( $purchasable, $product ){
        if( $product->get_price() == 0 )
            $purchasable = false;
        return $purchasable;
    }
    add_filter( 'woocommerce_is_purchasable', 'remove_add_to_cart_on_0', 10, 2 );

Upvotes: 4

Related Questions