Получите минимальную сумму заказа для бесплатной доставки в WooCommerce - PullRequest
2 голосов
/ 05 октября 2019

Мне было интересно ... Можно ли получить «Минимальную сумму заказа для бесплатной доставки» в WooCommerce?

Моя мысль такова:

1) Проверить посетителей Странас WooCommerce geolocation

2) Проверьте, содержат ли регионы зоны доставки посетителей страны

3) Если да >> Получите способы доставки для этой зоны доставки

4) Если способ доставки= 'free_shipping' echo 'Минимальная сумма заказа для бесплатной доставки =' $ free_shipping_order_amount

Это было бы выполнимо правильно? Но я не могу этого сделать.

Вот что у меня есть:

$delivery_zones = WC_Shipping_Zones::get_zones();
$geo                = new WC_Geolocation();
$user_ip            = $geo->get_ip_address();
$user_geo           = $geo->geolocate_ip( $user_ip );
$country            = $user_geo['country'];
$user_country       = WC()->countries->countries[ $country ];

foreach ((array) $delivery_zones as $key => $delivery_zone ) {

    if (strpos($delivery_zone['formatted_zone_location'], $user_country) !== false) {
        foreach ($delivery_zone['shipping_methods'] as $value) {
            break;
        }

        if ($value->id == 'free_shipping') {
            // This is where all magic should happen
        }

    }

}

Любая помощь будет высоко ценится :) Tia

...