【发布时间】:2017-12-08 13:48:49
【问题描述】:
我有一个基于活动的 WordPress 网站,我使用 WooCommerce 在该网站上出售门票。有没有办法隐藏成本为零的产品的“添加到购物车”按钮?
谢谢。
【问题讨论】:
标签: wordpress woocommerce
我有一个基于活动的 WordPress 网站,我使用 WooCommerce 在该网站上出售门票。有没有办法隐藏成本为零的产品的“添加到购物车”按钮?
谢谢。
【问题讨论】:
标签: wordpress woocommerce
您在主题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 );
【讨论】:
这段代码在function.php中使用这两个过滤器就像魅力一样。
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 );
【讨论】:
根据文档,这可能是一个合适的解决方案
woocommerce_is_purchasable – 过滤器
函数名称:WC_Product::is_purchasable
is_purchasable() — 如果无法购买产品,则返回 false。
https://woocommerce.wp-a2z.org/oik_api/wc_productis_purchasable/
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 );
【讨论】: