Описание woocommerce_get_variation_sale_price
— Filter
Хук woocommerce_get_variation_sale_price позволяет изменить цену распродажи для вариаций товара в WooCommerce. Он срабатывает при получении цены распродажи вариации и позволяет настроить ее значение в зависимости от условий.
Примеры использования
Пример изменения цены распродажи на 20% ниже от оригинальной цены:
add_filter('woocommerce_get_variation_sale_price', function($price, $product) {
$original_price = $product->get_regular_price();
return $original_price ? $original_price * 0.8 : $price;
}, 10, 2);
В этом примере мы уменьшаем цену распродажи на 20% от оригинальной цены.
Пример установки фиксированной цены распродажи для всех вариаций:
add_filter('woocommerce_get_variation_sale_price', function($price, $product) {
return 15.99;
}, 10, 2);
Здесь мы устанавливаем фиксированную цену распродажи на 15.99 для всех вариаций.
Пример изменения цены распродажи в зависимости от атрибута вариации:
add_filter('woocommerce_get_variation_sale_price', function($price, $product) {
if ($product->get_attribute('size') === 'large') {
return 12.99;
}
return $price;
}, 10, 2);
Мы устанавливаем специальную цену распродажи для вариации с атрибутом ‘размер’ равным ‘large’.
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо динамически изменить цену распродажи для вариаций товара, например, в зависимости от условий или атрибутов.
– Производительность
Следите за тем, чтобы изменения не вызывали чрезмерных вычислений, так как это может повлиять на производительность.
– Предупреждения
Убедитесь, что измененная цена распродажи корректно отображается на фронтенде и не нарушает логику ценообразования.
Альтернативы
Тип: filter
Этот хук позволяет изменить регулярную цену для вариаций товара.
Используйте его, если нужно произвести аналогичные изменения для обычной цены вариации.
Тип: filter
Этот хук позволяет изменить цену товара, включая вариации.
Используйте его, если хотите изменить цену не только для вариаций, но и для основного товара.