Верифікація електронної адреси
Double opt-in підтверджує, що вказана e-mail адреса справді належить особі, яка створює обліковий запис. Плагін Polski for WooCommerce надсилає активаційне посилання і блокує вхід доти, доки не буде натиснуто це посилання.
Чому варто використовувати double opt-in
Section titled “Чому варто використовувати double opt-in”Польське законодавство не вимагає double opt-in, але його варто увімкнути з огляду на:
- RODO - підтверджуєте особу власника e-mail
- Захист від ботів - блокує фальшиві облікові записи
- Якість бази - маєте впевненість, що e-mail адреси справжні
- Доставлюваність - менше відбитих листів і позначень як спам
- Закон про електронні послуги - підтвердження бажання користуватися послугою
Налаштування
Section titled “Налаштування”Перейдіть до WooCommerce > Ustawienia > Polski > Kasa і налаштуйте розділ “Верифікація e-mail”.
Основні налаштування
Section titled “Основні налаштування”| Налаштування | Значення за замовчуванням | Опис |
|---|---|---|
| Увімкнути верифікацію e-mail | Ні | Активує механізм double opt-in |
| Час дії посилання | 48 годин | Як довго активаційне посилання дійсне |
| Автоматичне видалення неверифікованих | 7 днів | Через скільки днів видаляти неверифіковані облікові записи |
| Дозволити покупки без верифікації | Ні | Чи може неверифікований користувач оформлювати замовлення |
Розширені налаштування
Section titled “Розширені налаштування”| Налаштування | Опис |
|---|---|
| Перенаправлення після активації | URL, на який користувача буде перенаправлено після натискання посилання |
| Сторінка очікування | Сторінка, що відображається замість панелі “Мій обліковий запис” для неверифікованих |
| Повторне надсилання посилання | Чи відображати кнопку “Надіслати активаційне посилання повторно” |
| Ліміт повторних надсилань | Максимальна кількість повторних надсилань посилання (захист від зловживань) |
Процес верифікації
Section titled “Процес верифікації”Крок за кроком
Section titled “Крок за кроком”- Клієнт реєструє обліковий запис (через “Мій обліковий запис” або під час замовлення)
- Плагін генерує активаційний токен і зберігає його в базі
- Лист з активаційним посиланням надходить на вказану адресу
- Обліковий запис має статус “неверифікований” - вхід заблоковано
- Клієнт натискає посилання в листі
- Плагін перевіряє токен, активує обліковий запис і авторизує клієнта
- Клієнт потрапляє на сторінку “Мій обліковий запис” або обраний URL
Реєстрація під час оформлення замовлення
Section titled “Реєстрація під час оформлення замовлення”Якщо опція “Дозволити покупки без верифікації” вимкнена:
- замовлення не буде оформлено, доки клієнт не верифікує e-mail
- клієнт побачить повідомлення з інструкцією перевірити поштову скриньку
Якщо опція увімкнена:
- замовлення буде оформлено в звичайному порядку
- обліковий запис вимагатиме верифікації під час наступного входу
- активаційний лист буде надіслано паралельно з підтвердженням замовлення
Блокування входу
Section titled “Блокування входу”Неверифіковані користувачі не можуть увійти. Вони бачать повідомлення:
“Ваш обліковий запис ще не верифіковано. Перевірте свою e-mail скриньку і натисніть активаційне посилання. [Надіслати посилання повторно]“
Налаштування повідомлення про блокування
Section titled “Налаштування повідомлення про блокування”Повідомлення змінюється в налаштуваннях плагіна. Доступні змінні:
| Змінна | Опис |
|---|---|
{email} | E-mail адреса користувача |
{resend_link} | Посилання для повторного надсилання активаційного листа |
{expiry} | Час дії посилання |
Приклад нестандартного повідомлення:
Обліковий запис {email} потребує верифікації. Натисніть посилання в листі, який ми надіслали.Не отримали повідомлення? {resend_link}Налаштування e-mail повідомлень
Section titled “Налаштування e-mail повідомлень”Шаблон активаційного листа
Section titled “Шаблон активаційного листа”Плагін додає новий тип листа у WooCommerce > Ustawienia > E-maile > Верифікація e-mail адреси.
Доступні налаштування:
| Налаштування | Опис |
|---|---|
| Увімкнути/вимкнути | Активує надсилання листа |
| Тема | Тема повідомлення (за замовчуванням: “Підтвердьте свою e-mail адресу”) |
| Заголовок | Заголовок у тексті листа |
| Текст | Додатковий текст над активаційним посиланням |
| Тип листа | HTML або звичайний текст |
Змінні в шаблоні
Section titled “Змінні в шаблоні”| Змінна | Опис |
|---|---|
{site_title} | Назва магазину |
{customer_name} | Ім’я клієнта |
{activation_link} | Активаційне посилання (повний URL) |
{activation_button} | Активаційна кнопка (HTML) |
{expiry_hours} | Час дії посилання в годинах |
Перевизначення шаблону листа
Section titled “Перевизначення шаблону листа”Щоб налаштувати HTML шаблон, скопіюйте файл:
wp-content/plugins/polski/templates/emails/email-verification.phpдо:
wp-content/themes/twoj-motyw/woocommerce/emails/email-verification.phpПрограмні розширення
Section titled “Програмні розширення”Hook перед верифікацією
Section titled “Hook перед верифікацією”add_action('polski/email_verification/before_verify', function (int $user_id, string $token): void { // Логіка перед активацією облікового запису // напр. логування події error_log(sprintf('Weryfikacja e-mail dla użytkownika #%d', $user_id));}, 10, 2);Hook після верифікації
Section titled “Hook після верифікації”add_action('polski/email_verification/verified', function (int $user_id): void { // Логіка після активації облікового запису // напр. призначення ролі, надсилання вітального листа $user = new WP_User($user_id); $user->set_role('customer');}, 10, 1);Фільтр URL перенаправлення
Section titled “Фільтр URL перенаправлення”add_filter('polski/email_verification/redirect_url', function (string $url, int $user_id): string { return wc_get_page_permalink('myaccount') . 'edit-account/';}, 10, 2);Фільтр часу дії токена
Section titled “Фільтр часу дії токена”add_filter('polski/email_verification/token_expiry', function (int $hours): int { return 72; // 72 години замість стандартних 48});Перевірка статусу верифікації
Section titled “Перевірка статусу верифікації”$is_verified = get_user_meta($user_id, '_polski_email_verified', true);
if ($is_verified !== 'yes') { // Обліковий запис неверифікований}Захист від зловживань
Section titled “Захист від зловживань”Обмеження повторних надсилань
Section titled “Обмеження повторних надсилань”Плагін дозволяє надіслати активаційне посилання повторно максимум 5 разів на годину на одну e-mail адресу. Ліміт змінюється в налаштуваннях.
Захист токенів
Section titled “Захист токенів”- Токени генеруються через
wp_generate_password(32, false)- криптографічно безпечні - Кожен токен діє лише один раз
- Токени втрачають дію після встановленого часу
- WP-Cron автоматично видаляє прострочені токени
Найчастіші проблеми
Section titled “Найчастіші проблеми”Активаційний лист не доходить
Section titled “Активаційний лист не доходить”- Перевірте папку spam/junk
- Перевірте конфігурацію SMTP (рекомендовано: WP Mail SMTP або подібний плагін)
- Перевірте логи листів у WooCommerce > Status > Logi
- Переконайтеся, що лист не блокується поштовим сервером
Активаційне посилання не працює
Section titled “Активаційне посилання не працює”- Перевірте, чи не прострочене посилання (за замовчуванням 48 годин)
- Перевірте, чи permalink у WordPress налаштований правильно
- Перевірте, чи плагін безпеки не блокує URL з токеном
Клієнт верифікував e-mail, але не може увійти
Section titled “Клієнт верифікував e-mail, але не може увійти”- Перевірте, чи мета
_polski_email_verifiedмає значенняyesу профілі користувача - Перевірте, чи інший плагін не блокує вхід
- Перевірте, чи обліковий запис не позначено як спам антиспамом