Php 当价格为0时,将“添加到购物车”按钮更改为“请求报价”
我有一个产品X在几个尺寸作为主要产品X的变化产品添加。对于小尺寸的价格是可用的,客户可以在线购物。但是,对于大尺寸的产品X,它不能在网上购买。因此,对于该产品X的一些变体,我希望删除“添加到购物车”按钮,并将其更改为转到“请求报价”页面的按钮 我的想法是,如果我将可变产品价格设置为0,则“添加到购物车”按钮将消失,并显示“请求报价”按钮Php 当价格为0时,将“添加到购物车”按钮更改为“请求报价”,php,wordpress,woocommerce,product,price,Php,Wordpress,Woocommerce,Product,Price,我有一个产品X在几个尺寸作为主要产品X的变化产品添加。对于小尺寸的价格是可用的,客户可以在线购物。但是,对于大尺寸的产品X,它不能在网上购买。因此,对于该产品X的一些变体,我希望删除“添加到购物车”按钮,并将其更改为转到“请求报价”页面的按钮 我的想法是,如果我将可变产品价格设置为0,则“添加到购物车”按钮将消失,并显示“请求报价”按钮 关于如何在php中实现这一点,您有什么想法吗?您只需要使用if函数设置一些条件 将此函数放在function.php中 add_filter('woocomme
关于如何在php中实现这一点,您有什么想法吗?您只需要使用if函数设置一些条件
将此函数放在function.php中
add_filter('woocommerce_get_price_html', 'requestQuote', 10, 2);
function requestQuote($price, $product) {
if ( $price == wc_price( 0.00 ) ){
remove_action( 'woocommerce_single_product_summary',
'woocommerce_template_single_add_to_cart', 30 );
return 'Request Quote';
}
else{
return $price;}
}
谢谢这几乎解决了它!但是,它不会删除“添加到购物车”按钮。因此,现在客户可以免费订购产品。有什么建议吗?@trika只需编辑我的回答嗯,不幸的是,添加到购物车按钮并没有消失。看来你的主题或插件正在使用这个钩子尝试增加优先级30我会检查它
add_filter('woocommerce_get_price_html', 'requestQuote', 10, 2);
function requestQuote($price, $product) {
if ( $price == wc_price( 0.00 ) ){
remove_action( 'woocommerce_single_product_summary',
'woocommerce_template_single_add_to_cart', 30 );
return 'Request Quote';
}
else{
return $price;}
}