WooCommerce má k dispozici spoustu filtrů, kterými je možné upravovat fungování vašeho e-shopu. Jedním z nich je znemožnění zakoupení produktu (ač je stále viditelný v seznamu produktů). Ideální kousek kódu do vaší child theme.
Následující kousek kódu znemožní produkt koupit, pokud je jeho cena 0:
/* odstranění tlačítka Koupit, pokud je cena produktu 0 */
function jk_hide_add_to_cart_when_zero_price( $purchasable, $product ){
if( $product->get_price() == 0 )
$purchasable = false;
return $purchasable;
}
add_filter( 'woocommerce_is_purchasable', 'jk_hide_add_to_cart_when_zero_price', 10, 2 );
Je možné také tlačítko “koupit” odebrat na základě jiné logiky, než je cena. Například podle štítku, který produktu dáte:
function jk_woo_price_hide_add_to_cart( $purchasable, $product ){
if( in_array(252, $product->tag_ids)) { //252 is tag ID
$purchasable = false;
}
return $purchasable;
}
add_filter( 'woocommerce_is_purchasable', 'jk_woo_price_hide_add_to_cart', 10, 2 );