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

Правові чекбокси

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

Магазин повинен отримати чітку згоду клієнта на:

  • регламент магазину (умови договору купівлі-продажу)
  • політику конфіденційності (обробка персональних даних)
  • право на відмову від договору (інформація про 14-денний термін)

Кожна згода вимагає окремого чекбокса. Чекбокс не може бути позначеним за замовчуванням.

Правові чекбокси на сторінці каси WooCommerce

Перейдіть до WooCommerce > Ustawienia > Polski > Kasa і налаштуйте розділ “Правові чекбокси”.

Плагін додає такі чекбокси:

ЧекбоксОбов’язковийТекст за замовчуванням
РегламентТакЯ ознайомився з [регламентом] і приймаю його положення.
Політика конфіденційностіТакЯ ознайомився з [політикою конфіденційності] і даю згоду на обробку моїх персональних даних.
Право на відмовуТакМене поінформовано про право на відмову від договору в 14-денний термін.
Маркетингова згодаНіЯ даю згоду на отримання комерційної інформації електронним шляхом.

Додавання нестандартного чекбокса

Section titled “Додавання нестандартного чекбокса”

У панелі налаштувань натисніть Додати чекбокс і заповніть форму:

ПолеОпис
НазваВнутрішній ідентифікатор (напр. newsletter_consent)
ЕтикеткаТекст, що відображається поруч із чекбоксом
Обов’язковийЧи має чекбокс бути позначеним для оформлення замовлення
ПозиціяПорядок відображення (число)
ОписДодатковий текст під чекбоксом (опціонально)
Повідомлення про помилкуТекст, що відображається, коли обов’язковий чекбокс не позначено

У тексті етикетки можна використовувати:

  • [regulamin] - автоматичне посилання на сторінку регламенту
  • [polityka-prywatnosci] - автоматичне посилання на політику конфіденційності
  • [odstapienie] - посилання на сторінку про право на відмову
  • <a href="URL">текст</a> - нестандартне посилання
  • <strong>текст</strong> - жирний шрифт

Сторінки регламенту й політики конфіденційності беруться з WooCommerce > Ustawienia > Zaawansowane > Konfiguracja strony.

Валідація на стороні сервера

Section titled “Валідація на стороні сервера”

Плагін перевіряє чекбокси на стороні сервера хуком woocommerce_checkout_process. Якщо обов’язковий чекбокс не позначено, замовлення не пройде і клієнт побачить помилку.

Валідація на стороні клієнта

Section titled “Валідація на стороні клієнта”

Опціональна валідація JavaScript показує помилку одразу після натискання кнопки, без перезавантаження сторінки. Увімкніть її в:

WooCommerce > Ustawienia > Polski > Kasa > Валідація JS чекбоксів

Повідомлення про помилки

Section titled “Повідомлення про помилки”

Кожен чекбокс має конфігурований текст помилки. Стандартні повідомлення:

ЧекбоксПовідомлення про помилку
РегламентЩоб оформити замовлення, ви повинні прийняти регламент магазину.
Політика конфіденційностіЩоб оформити замовлення, ви повинні прийняти політику конфіденційності.
Право на відмовуВи повинні підтвердити ознайомлення з інформацією про право на відмову.

Плагін зберігає інформацію про згоди:

  • як метадані замовлення (_polski_consent_*)
  • з датою й часом надання згоди
  • з версією регламенту/політики конфіденційності (якщо увімкнено відстеження версій)

Ці дані видно в панелі адміністратора замовлення. Їх можна експортувати для потреб RODO.

Перегляд згод у замовленні

Section titled “Перегляд згод у замовленні”

У вигляді замовлення в панелі адміністратора, у розділі “Правові згоди”, ви знайдете список наданих згод з датами.

Програмне керування чекбоксами

Section titled “Програмне керування чекбоксами”

Додавання чекбокса програмно

Section titled “Додавання чекбокса програмно”
add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array {
$checkboxes['custom_consent'] = [
'label' => 'Wyrażam zgodę na przetwarzanie danych w celu realizacji reklamacji.',
'required' => true,
'position' => 50,
'error_message' => 'Musisz wyrazić zgodę na przetwarzanie danych.',
'description' => '',
];
return $checkboxes;
});
add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array {
unset($checkboxes['marketing_consent']);
return $checkboxes;
});

Зміна наявного чекбокса

Section titled “Зміна наявного чекбокса”
add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array {
if (isset($checkboxes['terms'])) {
$checkboxes['terms']['label'] = 'Akceptuję <a href="/regulamin">regulamin</a> sklepu.';
}
return $checkboxes;
});

Умовне відображення чекбокса

Section titled “Умовне відображення чекбокса”
add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array {
$cart_total = WC()->cart->get_total('edit');
if ($cart_total > 500) {
$checkboxes['high_value_consent'] = [
'label' => 'Potwierdzam zamówienie o wartości powyżej 500 zł.',
'required' => true,
'position' => 60,
'error_message' => 'Musisz potwierdzić zamówienie o wysokiej wartości.',
];
}
return $checkboxes;
});
.polski-legal-checkboxes {
margin: 1.5em 0;
padding: 1em;
background: #f9f9f9;
border: 1px solid #e0e0e0;
border-radius: 4px;
}
.polski-legal-checkbox {
margin-bottom: 0.8em;
}
.polski-legal-checkbox label {
font-size: 0.9em;
line-height: 1.5;
cursor: pointer;
}
.polski-legal-checkbox__description {
margin-top: 0.3em;
font-size: 0.8em;
color: #666;
}
.polski-legal-checkbox--error label {
color: #c00;
}

Плагін підтримує чекбокси в класичному checkout і Block Checkout. У Block Checkout чекбокси працюють через блок woocommerce/checkout-terms-block.

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

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

Посилання в етикетці не працює

Section titled “Посилання в етикетці не працює”

Перевірте, чи цільова сторінка опублікована (а не в чернетці) і чи правильно введено скорочення (напр. [regulamin]).

Замовлення проходить попри непозначений чекбокс

Section titled “Замовлення проходить попри непозначений чекбокс”

Перевірте, чи чекбокс позначено як “Обов’язковий”. Перевірте консоль браузера на наявність помилок JavaScript, які можуть блокувати валідацію на стороні клієнта.

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