如何使用function.php在WooCommerce中启用免费送货

时间:2016-05-26 12:30:52

标签: php wordpress woocommerce

Wordpress 4.5.2 WooCommerce 2.5.5

默认情况下,我已禁用woocommerce中的免费送货选项,仅启用统一费率送货。

现在,如果购物车总数>> 20,那么我只想启用免费送货选项,否则请使用统一费率。

这是我的代码:

add_action( 'woocommerce_before_cart', 'apply_free_shipping_coupon' );

function apply_free_shipping_coupon($aa)
{
    global $woocommerce;
    global $cart_total_inc_vat;
    $cart_total_inc_vat =  $woocommerce->cart->get_cart_total();
    //echo $cart_total_inc_vat;
    add_filter( 'woocommerce_shipping_free_shipping_is_available', 'free_shipping_based_on_cart_shipping_class' );
    }
}

function free_shipping_based_on_cart_shipping_class( $is_available ) 
{
    $found = false;
    if($cart_total_inc_vat >=20)
    {
        $cart_items = WC()->cart->get_cart();

      foreach ( $cart_items as $cart_item )
      {
        $product = $cart_item['data'];
        $class   = $product->get_shipping_class();

        if ( 'free_shipping' === $class ) {
            $found = true;
            break;
        }
      }
      $found = true;
    }
    return $is_available && $found;
}

1 个答案:

答案 0 :(得分:0)

WooCommerce - >设置 - >送货 - >免费送货。 您可以更改设置以允许免费送货超过20美元。