Описание woocommerce_find_rates
— Filter
Хук woocommerce_find_rates позволяет изменять массив доступных способов доставки перед их отображением в WooCommerce. Он срабатывает во время вычисления тарифов доставки и позволяет разработчикам модифицировать или добавлять новые тарифы перед их выводом пользователю
Примеры использования
Пример изменения стоимости доставки для конкретного способа:
add_filter('woocommerce_find_rates', function($rates) {
if(isset($rates['flat_rate:1'])) {
$rates['flat_rate:1']->cost = 15.00;
}
return $rates;
});
В этом примере мы изменяем стоимость стандартной доставки на 15.00.
Пример добавления нового способа доставки:
add_filter('woocommerce_find_rates', function($rates) {
$rates['custom_shipping'] = new WC_Shipping_Rate('custom_shipping', 'Кастомная доставка', 20.00, '', 'custom');
return $rates;
});
Мы добавляем новый способ доставки с идентификатором ‘custom_shipping’ и стоимостью 20.00.
Пример изменения названия способа доставки:
add_filter('woocommerce_find_rates', function($rates) {
if(isset($rates['flat_rate:1'])) {
$rates['flat_rate:1']->label = 'Экспресс доставка';
}
return $rates;
});
В этом примере мы изменяем название стандартной доставки на ‘Экспресс доставка’.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить доступные способы доставки или их параметры перед выводом на странице оформления заказа
– Производительность
При использовании этого хука следует учитывать, что изменения могут повлиять на время загрузки, если производятся сложные вычисления
– Предупреждения
Убедитесь, что изменения не конфликтуют с другими плагинами или методами доставки, чтобы избежать путаницы для пользователей
Альтернативы
Тип: filter
Этот хук позволяет изменять список доступных методов доставки
Используйте его, если нужно изменить сами методы доставки, а не только их параметры