Woocommerce - 当产品缺货时禁用 add_to_cart 按钮

问题描述 投票:0回答:2

当产品缺货时,我想禁用“添加到购物车”按钮。

我尝试过类似的方法,但根本不起作用:

function remove_add_to_cart ($product){ 
if($product->is_on_backorder){
    add_filter( 'woocommerce_is_purchasable', '__return_false');}}

请问有什么建议吗?

php wordpress woocommerce
2个回答
2
投票

如果产品缺货,一种解决方案(取决于您实际想要做什么)可能是完全删除 add_to_cart 表单。也可能有其他解决方案,但你的问题有点模糊。这是专门针对产品单页的。您在问题中没有具体说明。

add_action('woocommerce_single_product_summary', 'check_if_backordered', 1 );
function check_if_backordered(){
    global $product;
    if ($product->is_on_backorder()){
        remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30);
        // Here you can insert whatever you want in its place
    }
}

0
投票

超级有帮助 - 非常感谢。为了清楚起见,代码是:

add_action('woocommerce_single_product_summary', 'check_if_backordered', 1 );函数 check_if_backordered(){ 全局 $product; if ($product->is_on_backorder()){ add_filter( 'woocommerce_is_purchasable', '__return_false'); } }

© www.soinside.com 2019 - 2024. All rights reserved.