在Woocommerce中隐藏基于总重量的特定付款方式

时间:2018-08-08 18:15:44

标签: php wordpress woocommerce unset payment-method

在woocommerce中,我想隐藏特定总重量的“货到付款”付款方式。

例如,如果购物车总重不超过 15公斤,则在结帐时采用“货到付款”付款方式。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

如果购物车总重量不超过 15 Kg ,以下简单代码将隐藏“ COD”付款方式。
我假设Woocommerce中设置的重量单位为 Kg (公斤)

代码:

add_filter( 'woocommerce_available_payment_gateways', 'hide_payment_gateways_based_on_weight', 11, 1 );
function hide_payment_gateways_based_on_weight( $available_gateways ) {

    $total_weight = WC()->cart->get_cart_contents_weight();

    if( $total_weight >= 15 )
        unset($available_gateways['cod']); // unset 'cod'

    return $available_gateways;
}

代码进入您的活动子主题(或活动主题)的function.php文件中。经过测试和工作。