woocommerce_order_before_calculate_totals

12 февраля, 2025
Узнайте, как использовать хук woocommerce_order_before_calculate_totals для изменения итоговых сумм в заказе WooCommerce
Быстрая навигация по записи

Описание woocommerce_order_before_calculate_totals

— Action

Хук woocommerce_order_before_calculate_totals позволяет изменить данные заказа перед расчетом итоговых сумм. Он срабатывает в процессе обработки заказа, когда WooCommerce готовится пересчитать общую сумму, например, перед применением скидок, налогов и других сборов

Примеры использования

Пример добавления фиксированной скидки к заказу:

				
					add_action('woocommerce_order_before_calculate_totals', function($order) {
   $discount = 10; // сумма скидки
   $order->set_discount_total($order->get_discount_total() + $discount);
});
				
			

В этом примере мы добавляем фиксированную скидку в размере 10 к общему итогу заказа

Пример изменения стоимости доставки в зависимости от условий:

				
					add_action('woocommerce_order_before_calculate_totals', function($order) {
   if ($order->get_total() > 100) {
       $order->set_shipping_total(0); // бесплатная доставка
   }
});
				
			

Здесь мы устанавливаем бесплатную доставку для заказов, сумма которых превышает 100

Пример добавления пользовательского поля в сумму заказа:

				
					add_action('woocommerce_order_before_calculate_totals', function($order) {
   $custom_fee = 5; // дополнительный сбор
   $order->add_fee('Кастомный сбор', $custom_fee, true);
});
				
			

В этом примере мы добавляем кастомный сбор к заказу

— Лучшие практики

– Использование

Используйте этот хук, когда необходимо внести изменения в итоги заказа перед его расчетом

– Производительность

Хук может повлиять на производительность, если в нем выполняются сложные вычисления или запросы к базе данных

– Предупреждения

Убедитесь, что ваши изменения не нарушают логику расчета итогов, чтобы избежать ошибок в заказах

Альтернативы

Тип: action

Этот хук срабатывает после расчета итоговых сумм заказа и может быть использован для дальнейших изменений

Используйте его, если необходимо выполнить действия после завершения расчетов, например, для логирования или уведомлений

Оставить комментарий

Нужна помощь с WordPress WooCommerce плагинами темой оптимизацией ?

Упрощаем сложное, создаем впечатляющее!
100% без риска
Нет обязательств по найму
Бесплатная оценка
4900 ₽
Для портфолио
Шаблон сайта портфолио на русском языке для веб студии. С современным дизайном, он упрощает создание блога и портфолио вашей команды.

Поможем вывести Ваш бизнес на новый уровень!

Проснувшись однажды утром после беспокойного сна, Грегор Замза обнаружил

Добро пожаловать!

Авторизуйтесь, чтобы продолжить

или

Забыли пароль? Восстановить

* Если аккунта у Вас еще нет, то он будет создан автоматически

Давайте составим техническое задание!
100% без риска
Нет обязательств по найму
Бесплатная оценка стоимости
Здравствуйте! Я асистент на основе искусственного интеллекта. Вы можете общаться со мной, как с человеком — задавайте вопросы, описывайте свои идеи и требования.

С удовольствием помогу вам составить техническое задание для вашего WordPress проекта. Если Вам нужна техническая поддержка по купленному у нас плагину или шаблону, то создайте тикет в личном кабинете.

Выберите подходящий вариант или опишите свою задачу в свободной форме, и я помогу вам составить четкий план действий, для оценки стоимости нашими разработчиками! 😊