Woocommerce根据购物车数量和购物车类别强制免费送货

时间:2018-11-29 16:31:44

标签: php wordpress woocommerce shopping-cart hook-woocommerce

如何根据我所使用的特定购物车强制免费送货

我的条件(有效):

  • 如果购物车中有4件商品,而购物车中没有商品来自圣诞节 ...

我也无法获得免费送货服务。我需要使用woocommerce_cart_calculate_fees钩子来做到这一点吗?

add_filter( 'woocommerce_calculated_total', 'calculated_total', 10, 2 );
function calculated_total( $total, $cart ) {
    $taster_count = 4;
    $item_count   = $cart->get_cart_contents_count();
    $chistm_count = 0;

    foreach ( $cart->get_cart() as $cart_item ) {
        if ( ! has_term( 'christmas', 'product_cat', $cart_item['product_id'] ) ) {
            $chistm_count += $cart_item['quantity'];
        }
    }
    if( $taster_count == $item_count && $chistm_count == $taster_count  )
        $discount = 3.00;
        $cart->add_fee( 'You subscribed! Free shipping applied!', -$discount);
        return 10;
    return $total;
}

1 个答案:

答案 0 :(得分:2)

您可以使用woocommerce_package_rates钩子代替woocommerce_calculated_total

根据您的条件,除免费送货外,所有方法均未设置。

希望这可以解决问题。