Ціна "від" для товарів із варіантами
Модуль “Ціна від” замінює стандартний ціновий діапазон WooCommerce (напр., “19,99 - 49,99 PLN”) більш зрозумілим форматом “від 19,99 PLN” для товарів із варіантами.
Чому це важливо
Section titled “Чому це важливо”Стандартне відображення цін WooCommerce для товарів із варіантами показує повний діапазон: “19,99 PLN - 49,99 PLN”. Це може заплутувати клієнтів і займає багато місця в списках товарів.
Формат “від 19,99 PLN”:
- Зрозуміліший на мобільних пристроях
- Чітко повідомляє найнижчу ціну
- Є стандартом у більшості інтернет-магазинів
- Працює як на сторінках архівів, так і на сторінці товару
Налаштування
Section titled “Налаштування”Перейдіть до WooCommerce > Налаштування > Polski > Ціни.
| Налаштування | Опис | За замовчуванням |
|---|---|---|
| Увімкнути ціну “від” | Показувати “від {ціна}” замість цінового діапазону | Так |
| Текст ціни “від” | Шаблон тексту з токеном {price} | od {price} |
Приклади шаблонів
Section titled “Приклади шаблонів”| Шаблон | Результат |
|---|---|
od {price} | od 19,99 PLN |
Cena od {price} | Cena od 19,99 PLN |
ab {price} | ab 19,99 PLN (для DE) |
from {price} | from 19,99 PLN (для EN) |
Як це працює
Section titled “Як це працює”- Модуль фільтрує хук
woocommerce_get_price_html - Перевіряє, чи товар є
WC_Product_Variable - Отримує ціни варіантів і перевіряє, чи існує діапазон (min != max)
- Якщо так, замінює ціновий діапазон форматом “від {найнижча_ціна}”
- Якщо всі варіанти мають однакову ціну, відображає звичайну ціну
Фільтр
Section titled “Фільтр”// Налаштуйте HTML ціни "від"add_filter('polski/price/from_price_html', function (string $html, WC_Product $product): string { // Додайте клас CSS або змініть формат return '<span class="my-from-price">' . $html . '</span>';}, 10, 2);Вимкнення для вибраних товарів
Section titled “Вимкнення для вибраних товарів”Якщо ви хочете вимкнути “від” для конкретних товарів, скористайтеся фільтром:
add_filter('polski/price/from_price_html', function (string $html, WC_Product $product): string { if ($product->get_id() === 123) { return $product->get_price_html(); // Оригінальний діапазон } return $html;}, 10, 2);