在 WooCommerce 中,是否可以仅在购物车总数超过 100 时才显示特定国家/地区?

时间:2021-04-06 09:18:06

标签: wordpress woocommerce hook-woocommerce woocommerce-rest-api

我尝试使用名为“woocommerce_countries”的过滤器钩子来做到这一点。我尝试在此挂钩中获取购物车总数,但它不起作用。有没有人对此有任何想法或建议任何钩子?

1 个答案:

答案 0 :(得分:0)

请尝试使用此代码。 WooCommerce 3.6.2,他们删除了检查购物车数据的功能。但是购物车会话现在可以访问,所以我们使用这个函数 WC()->session->cart

add_filter( 'woocommerce_countries', 'products_disable_country', 10, 1 );
function products_disable_country( $countries ) {
    $cartdata = WC()->session->cart;
    if (is_array($cartdata) && !empty($cartdata)) {
        foreach ($cartdata as $itemdata) {
            $sum += $itemdata['line_total'];
        }
        if ($sum >= 100) {
            unset($countries["CA"]);
        }
    }
    return $countries;
}