You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WooCommerce:订单总额为0时隐藏到店自提配送选项

实现WooCommerce订单总额为0时隐藏到店自提配送选项

你可以通过WooCommerce官方提供的woocommerce_package_rates钩子实现需求,无需安装额外插件,添加一段简单代码即可:

add_filter( 'woocommerce_package_rates', 'hide_local_pickup_for_zero_total_orders', 10, 2 );
function hide_local_pickup_for_zero_total_orders( $rates, $package ) {
    // 获取购物车订单总额(编辑模式数值,避免格式化干扰判断)
    $order_total = WC()->cart->get_total( 'edit' );
    
    // 订单总额为0时,移除到店自提选项
    if ( $order_total == 0 ) {
        foreach ( $rates as $rate_key => $rate ) {
            // 匹配到店自提的配送方式ID,默认是local_pickup,需和你后台设置一致
            if ( 'local_pickup' === $rate->method_id ) {
                unset( $rates[$rate_key] );
                break;
            }
        }
    }
    
    return $rates;
}

注意事项:

  • 确认配送方式Slug:如果你的到店自提方式Slug不是local_pickup,需要修改代码对应值。可在WooCommerce后台「设置」→「配送」→「配送区域」中编辑到店自提方式,查看URL里的method_id参数,该值就是需要替换的Slug。
  • 代码放置位置:
    • 推荐用「Code Snippets」插件添加代码,避免主题更新导致代码丢失;
    • 也可将代码添加到当前主题(优先子主题)的functions.php文件末尾。
  • 测试验证:添加0元商品到购物车,进入结算页确认到店自提选项已隐藏。

内容的提问来源于stack exchange,提问作者Laura Nixon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 00:21:03