Описание woocommerce_calculated_shipping
— Filter
Хук woocommerce_calculated_shipping позволяет изменять данные о доставке, которые рассчитываются в процессе оформления заказа. Он срабатывает на этапе, когда WooCommerce вычисляет стоимость доставки на основе введенных данных о местоположении и выбранных методах доставки
Примеры использования
Пример добавления дополнительной надбавки к стоимости доставки:
add_filter('woocommerce_calculated_shipping', function($rates, $package) {
foreach ($rates as $rate_key => $rate) {
$rates[$rate_key]->cost += 5; // Добавляем 5 к стоимости каждого метода доставки
}
return $rates;
});
В этом примере мы добавляем 5 к стоимости каждого метода доставки.
Пример изменения стоимости конкретного метода доставки:
add_filter('woocommerce_calculated_shipping', function($rates, $package) {
if (isset($rates['flat_rate:1'])) {
$rates['flat_rate:1']->cost = 12.99; // Устанавливаем фиксированную стоимость для метода плоской ставки
}
return $rates;
});
Здесь мы изменяем стоимость метода доставки с id ‘flat_rate:1’ на 12.99.
Пример удаления метода доставки, если он превышает определенную стоимость:
add_filter('woocommerce_calculated_shipping', function($rates, $package) {
foreach ($rates as $rate_key => $rate) {
if ($rate->cost > 20) {
unset($rates[$rate_key]); // Удаляем методы доставки, стоимость которых превышает 20
}
}
return $rates;
});
В этом примере мы удаляем методы доставки, стоимость которых превышает 20.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить расчеты доставки в зависимости от разных условий, таких как местоположение или вес товара
– Производительность
Хук может повлиять на производительность, если изменения сложные или количество методов доставки велико
– Предупреждения
Следите за тем, чтобы изменения не мешали функционалу расчета доставки, особенно если используются сторонние плагины
Альтернативы
Тип: filter
Этот хук позволяет изменять доступные методы доставки до их расчетов
Используйте его, если нужно изменить доступные методы доставки на основе специфических условий до их расчета