Я только что реализовал специальное решение для доставки.
Зависит от общей стоимости товаров в корзине. Например:
if total is < 20 -> display free shipping
if total is >= 20 -> paid delivery
Но у меня проблема с кешем woocommerce ... Я думаю, дело в том, что woocommerce кеширует тарифы доставки, не принимая во внимание изменение порядка кол-во.
Итак, проблема в методе Calculate_shipping_for_package () ?
Если я включаю режим отладки доставки, все работает нормально, без обновлений.
Я попытался отключить кэш, но безуспешно.
add_action('woocommerce_checkout_update_order_review', function() {
$packages = WC()->cart->get_shipping_packages();
foreach ($packages as $key => $value) {
$shipping_session = "shipping_for_package_$key";
unset(WC()->session->$shipping_session);
}
}, 10, 2);
Итак. У вас когда-нибудь были такие проблемы? Как ты решил? Большое спасибо за любую помощь!