Верифікація електронної адреси
Double opt-in підтверджує, що вказаний e-mail дійсно належить особі, яка реєструється. Плагін Polski for WooCommerce надсилає активаційне посилання та блокує вхід до моменту підтвердження.
Навіщо використовувати double opt-in
Section titled “Навіщо використовувати double opt-in”Польське право не вимагає double opt-in, але варто увімкнути з огляду на:
- GDPR - верифікація особи, чиї дані ми обробляємо
- Захист від ботів - запобігає створенню фальшивих облікових записів
- Якість бази клієнтів - гарантує, що електронні адреси є дійсними
- Доставлюваність e-mail - зменшує ризик відмов (bounces) та позначень як спам
- Відповідність Закону про надання послуг електронним шляхом - підтвердження бажання користуватися послугою
Налаштування
Section titled “Налаштування”Перейдіть до WooCommerce > Налаштування > Polski > Каса та налаштуйте розділ “Верифікація e-mail”.
Основні налаштування
Section titled “Основні налаштування”| Налаштування | Значення за замовчуванням | Опис |
|---|---|---|
| Увімкнути верифікацію e-mail | Ні | Активує механізм double opt-in |
| Термін дії посилання | 48 годин | Як довго активаційне посилання є активним |
| Автоматичне видалення неверифікованих | 7 днів | Через скільки днів видалити неверифіковані облікові записи |
| Дозволити покупки без верифікації | Ні | Чи може неверифікований користувач оформлювати замовлення |
Розширені налаштування
Section titled “Розширені налаштування”| Налаштування | Опис |
|---|---|
| Перенаправлення після активації | URL, на який користувач буде перенаправлений після натискання посилання |
| Сторінка очікування | Сторінка, що відображається замість панелі “Мій обліковий запис” для неверифікованих |
| Повторне надсилання посилання | Чи відображати кнопку “Надіслати посилання повторно” |
| Ліміт повторних надсилань | Максимальна кількість повторних надсилань посилання (захист від зловживань) |
Процес верифікації
Section titled “Процес верифікації”Покроково
Section titled “Покроково”- Клієнт реєструє обліковий запис у WooCommerce (через сторінку “Мій обліковий запис” або при оформленні замовлення)
- Плагін генерує унікальний активаційний токен та зберігає його в базі
- Електронний лист з активаційним посиланням надсилається на вказану адресу
- Обліковий запис має статус “неверифікований” - вхід заблоковано
- Клієнт натискає активаційне посилання в електронному листі
- Плагін перевіряє токен, активує обліковий запис та входить користувача
- Клієнт перенаправляється на сторінку “Мій обліковий запис” або налаштований URL
Реєстрація при оформленні замовлення
Section titled “Реєстрація при оформленні замовлення”Якщо опція “Дозволити покупки без верифікації” вимкнена:
- замовлення не буде оформлено, доки клієнт не верифікує e-mail
- клієнт побачить повідомлення з інструкцією перевірити поштову скриньку
Якщо опція увімкнена:
- замовлення буде оформлено як зазвичай
- обліковий запис потребуватиме верифікації при наступному вході
- активаційний e-mail буде надіслано паралельно з підтвердженням замовлення
Блокування входу
Section titled “Блокування входу”Неверифіковані користувачі не можуть увійти. При спробі входу вони бачать повідомлення:
“Twoje konto nie zostało jeszcze zweryfikowane. Sprawdź swoją skrzynkę e-mail i kliknij link aktywacyjny. [Wyślij ponownie link]“
Налаштування повідомлення блокування
Section titled “Налаштування повідомлення блокування”Повідомлення можна налаштувати в параметрах плагіна. Доступні змінні:
| Змінна | Опис |
|---|---|
{email} | Електронна адреса користувача |
{resend_link} | Посилання для повторного надсилання активаційного e-mail |
{expiry} | Термін дії посилання |
Приклад власного повідомлення:
Konto {email} wymaga weryfikacji. Kliknij link w e-mailu, który wysłaliśmy.Nie otrzymałeś wiadomości? {resend_link}Налаштування електронного листа
Section titled “Налаштування електронного листа”Шаблон активаційного e-mail
Section titled “Шаблон активаційного e-mail”Плагін додає новий тип e-mail у WooCommerce > Налаштування > E-maile > Weryfikacja adresu e-mail.
Доступні налаштування:
| Налаштування | Опис |
|---|---|
| Увімкнути/вимкнути | Активує надсилання e-mail |
| Тема | Тема повідомлення (за замовчуванням: “Potwierdź swój adres e-mail”) |
| Заголовок | Заголовок у тексті e-mail |
| Зміст | Додатковий текст над активаційним посиланням |
| Тип e-mail | HTML або звичайний текст |
Змінні у шаблоні
Section titled “Змінні у шаблоні”| Змінна | Опис |
|---|---|
{site_title} | Назва магазину |
{customer_name} | Ім’я клієнта |
{activation_link} | Активаційне посилання (повний URL) |
{activation_button} | Кнопка активації (HTML) |
{expiry_hours} | Термін дії посилання в годинах |
Перевизначення шаблону e-mail
Section titled “Перевизначення шаблону e-mail”Щоб налаштувати 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 { // Логіка після активації облікового запису // наприклад, призначення ролі, надсилання вітального e-mail $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 на годину на одну електронну адресу. Ліміт можна змінити в налаштуваннях.
Захист токенів
Section titled “Захист токенів”- Токени генеруються за допомогою
wp_generate_password(32, false)- криптографічно безпечні - Кожен токен може бути використаний лише один раз
- Токени закінчуються після налаштованого часу
- Прострочені токени автоматично видаляються через WP-Cron
Найпоширеніші проблеми
Section titled “Найпоширеніші проблеми”Активаційний e-mail не надходить
Section titled “Активаційний e-mail не надходить”- Перевірте папку спам/junk
- Перевірте конфігурацію SMTP (рекомендовано: WP Mail SMTP або подібний плагін)
- Перевірте логи e-mail у WooCommerce > Статус > Логи
- Переконайтеся, що e-mail не блокується поштовим сервером
Активаційне посилання не працює
Section titled “Активаційне посилання не працює”- Перевірте, чи посилання не закінчилося (за замовчуванням 48 годин)
- Перевірте, чи permalink у WordPress налаштовано правильно
- Перевірте, чи плагін безпеки не блокує URL з токеном
Клієнт верифікував e-mail, але не може увійти
Section titled “Клієнт верифікував e-mail, але не може увійти”- Перевірте, чи мета
_polski_email_verifiedмає значенняyesу профілі користувача - Перевірте, чи інший плагін не блокує вхід
- Перевірте, чи обліковий запис не був позначений як спам антиспамом