Перейти до вмісту

Час доставки

Польське право вимагає, щоб магазин інформував про час доставки перед замовленням. Плагін Polski for WooCommerce дозволяє встановити час доставки глобально, для кожного продукту та варіанту.

Вкажіть час доставки, перш ніж клієнт натисне кнопку замовлення. Інформація повинна бути:

  • зрозумілою та чіткою
  • вказана у робочих або календарних днях
  • видимою на сторінці продукту

Відсутність інформації про час доставки може призвести до штрафів з боку UOKiK та становить порушення прав споживача.

Плагін реєструє спеціалізовану таксономію polski_delivery_time, яка дозволяє створювати попередньо визначені терміни доставки та призначати їх продуктам.

Управління термінами доставки

Section titled “Управління термінами доставки”

Перейдіть до Продукти > Час доставки, щоб керувати доступними термінами.

Приклади термінів:

НазваSlugОпис
1-2 робочі дні1-2-dni-roboczeПродукти на складі
3-5 робочих днів3-5-dni-roboczychПродукти, що замовляються у постачальника
7-14 робочих днів7-14-dni-roboczychПродукти на замовлення
До 24 годинdo-24-godzinЦифрові продукти / експрес
Доступний одразуdostepny-od-rekiНегайна реалізація

Терміни доставки працюють як таксономія WordPress - ви можете їх створювати, редагувати та видаляти в адміністративній панелі.

Глобальні налаштування

Section titled “Глобальні налаштування”

Перейдіть до WooCommerce > Налаштування > Polski > Ціни та налаштуйте розділ “Час доставки”.

НалаштуванняОпис
Увімкнути час доставкиАктивує відображення на сторінці продукту
Час доставки за замовчуваннямРезервне значення (fallback) для продуктів без призначеного терміну
Показати у лістингуВідображає час доставки на сторінках категорій
Показати у кошикуВідображає час доставки у кошику
МіткаТекст перед часом доставки (за замовчуванням: “Час доставки:“)

Час доставки за замовчуванням (fallback) відображається, коли продукт не має призначеного індивідуального терміну. Це дозволяє швидко впровадити функцію без необхідності редагування кожного продукту окремо.

Ієрархія відображення:

  1. Час доставки варіанту (якщо встановлений)
  2. Час доставки основного продукту (якщо встановлений)
  3. Час доставки за замовчуванням з глобальних налаштувань (fallback)

Якщо жодне з вищезазначених значень не встановлено, інформація про час доставки не буде відображена.

У редакторі продукту, у вкладці “Доставка”, ви знайдете поле Час доставки. Виберіть з переліку існуючий термін або створіть новий.

Для змінних продуктів кожен варіант може мати власний час доставки. Розгорніть секцію варіанту та встановіть індивідуальний термін. Варіанти без встановленого терміну успадковують значення від основного продукту.

Використовуйте shortcode [polski_delivery_time], щоб відобразити час доставки у будь-якому місці.

ПараметрТипЗа замовчуваннямОпис
product_idintпоточнийID продукту
labelstring"Czas dostawy: "Мітка перед значенням
show_labelbooltrueЧи відображати мітку
wrapperstringspanHTML-елемент обгортки
fallbackstring""Текст, коли час доставки відсутній

Базове використання:

[polski_delivery_time]

Результат: Czas dostawy: 1-2 dni robocze

Без мітки:

[polski_delivery_time show_label="false"]

Результат: 1-2 dni robocze

З власною міткою та fallback:

[polski_delivery_time label="Wysyłka: " fallback="Zapytaj o dostępność"]

Для конкретного продукту:

[polski_delivery_time product_id="456"]

У шаблоні PHP:

echo do_shortcode('[polski_delivery_time product_id="' . $product->get_id() . '"]');

Програмне управління часом доставки

Section titled “Програмне управління часом доставки”

Призначення терміну продукту

Section titled “Призначення терміну продукту”
wp_set_object_terms($product_id, '1-2-dni-robocze', 'polski_delivery_time');

Отримання терміну продукту

Section titled “Отримання терміну продукту”
$terms = wp_get_object_terms($product_id, 'polski_delivery_time');
if (!empty($terms) && !is_wp_error($terms)) {
$delivery_time = $terms[0]->name;
}

Створення нового терміну

Section titled “Створення нового терміну”
wp_insert_term(
'2-3 dni robocze',
'polski_delivery_time',
[
'slug' => '2-3-dni-robocze',
'description' => 'Standardowy czas realizacji',
]
);

Для імпорту часу доставки через CSV використовуйте колонку:

Колонка CSVОписЗначення
polski_delivery_timeНазва терміну доставки1-2 dni robocze

Якщо термін із зазначеною назвою не існує, він буде автоматично створений під час імпорту.

Приклад:

"Laptop Dell XPS 15",5499.00,"3-5 dni roboczych"
"Mysz Logitech MX",299.00,"1-2 dni robocze"

Динамічний час доставки

Section titled “Динамічний час доставки”

Для продуктів із тривалим терміном реалізації можна програмно змінювати відображуваний час доставки на основі залишків на складі або дати замовлення.

add_filter('polski/delivery_time/display', function (string $delivery_time, WC_Product $product): string {
if ($product->get_stock_quantity() > 0) {
return '1-2 dni robocze';
}
return '7-14 dni roboczych';
}, 10, 2);
.polski-delivery-time {
display: inline-block;
margin-top: 0.5em;
font-size: 0.9em;
color: #2e7d32;
}
.polski-delivery-time__label {
font-weight: 600;
}
.polski-delivery-time__value {
color: #333;
}

Найпоширеніші проблеми

Section titled “Найпоширеніші проблеми”

Час доставки не відображається

Section titled “Час доставки не відображається”
  1. Перевірте, чи модуль увімкнено в налаштуваннях
  2. Переконайтеся, що продукт має призначений термін або встановлено fallback за замовчуванням
  3. Перевірте, чи тема підтримує hook woocommerce_single_product_summary

Час доставки варіанту не змінюється після вибору

Section titled “Час доставки варіанту не змінюється після вибору”

Переконайтеся, що JavaScript плагіна завантажений. Перевірте консоль браузера на наявність помилок JS. Плагін оновлює час доставки варіанту через AJAX при зміні опції.

Ця сторінка має виключно інформаційний характер і не є юридичною консультацією. Перед впровадженням зверніться до юриста. Polski for WooCommerce - це програмне забезпечення з відкритим кодом (GPLv2), що надається без гарантій.