WooCommerce:如果订单总数为零,则隐藏本地取货运输选项

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

如果订单总额为零,我想隐藏 WooCommerce 运输选项中的“本地取货”选项。

这些是我当前的选择:

找到了一个专业插件,但它超出了我的需要。我更喜欢简单的代码片段而不是插件。

php wordpress woocommerce checkout shipping-method
1个回答
0
投票

根据此相关答案,如果购物车内容总数为零,您可以使用以下内容隐藏“本地取货”运输选项:

add_filter( 'woocommerce_package_rates', 'hide_local_pickup_for_free_orders', 10, 2 );
function hide_local_pickup_for_free_orders( $rates, $package ) {
    // If cart subtotal is equal to zero
    if( $package['contents_cost'] == 0 ) {
        foreach( $rates as $rate_key => $rate ) {
            // Hide Local Pickup shipping method(s)
            if ( $rate->method_id === 'local_pickup' ) {
                unset($rates[$rate_key]);
            }
        }
    }
    return $rates;
}

代码位于子主题(或任何插件)的functions.php 文件中。已测试并有效。

重要提示:要刷新运送方式缓存,请清空您的购物车

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