Описание woocommerce_coupon_validate_maximum_amount
— Filter
Хук woocommerce_coupon_validate_maximum_amount позволяет изменить логику проверки максимальной суммы купона в WooCommerce. Он срабатывает при валидации купонов в корзине и позволяет настроить правила, касающиеся максимальной суммы, на которую может быть применён купон
Примеры использования
Пример отключения проверки максимальной суммы для всех купонов:
add_filter('woocommerce_coupon_validate_maximum_amount', function($valid, $coupon, $cart) {
return true;
});
Этот код всегда возвращает true, тем самым игнорируя проверку максимальной суммы купона.
Пример изменения логики проверки максимальной суммы для купона с определённым кодом:
add_filter('woocommerce_coupon_validate_maximum_amount', function($valid, $coupon, $cart) {
if ($coupon->get_code() === 'SPECIAL10') {
// Установим максимальную сумму для этого купона
if ($cart->get_subtotal() > 100) {
return false;
}
}
return $valid;
});
В этом примере мы устанавливаем максимальную сумму для купона ‘SPECIAL10’ в 100 единиц.
Пример добавления логики для разных типов купонов:
add_filter('woocommerce_coupon_validate_maximum_amount', function($valid, $coupon, $cart) {
if ($coupon->get_discount_type() === 'fixed_cart' && $cart->get_subtotal() > 200) {
return false;
}
return $valid;
});
Здесь мы ограничиваем купоны типа ‘fixed_cart’, если сумма корзины превышает 200 единиц.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо настроить валидацию купонов в зависимости от максимальной суммы заказа
– Производительность
Хук не должен значительно влиять на производительность, так как проверка осуществляется на уровне валидации
– Предупреждения
Убедитесь, что изменения не конфликтуют с другими правилами валидации купонов
Альтернативы
Тип: filter
Этот хук позволяет добавлять дополнительные условия проверки для всех купонов
Используйте его, если нужно добавить более сложные условия проверки для купонов