Відгуки користувачів
Модуль інтеграції бібліотеки PHPMailer в OpenCart 3 у вигляді повноцінного поштового драйвера. Модуль додає вибір "PHPMailer" у системних налаштуваннях пошти та виносить розширену конфігурацію SMTP, OAuth 2, DKIM і логування в налаштування самого модуля
Переваги PHPMailer
- Надійний SMTP з коробки: дозволяє легко підключатися до зовнішніх поштових серверів (Gmail, Outlook, SendGrid, Ukr.net тощо) з підтримкою автентифікації (логін/пароль).
- Захист від спам-фільтрів: бібліотека автоматично і коректно формує всі технічні заголовки листа (headers). Це критично важливо для успішного проходження перевірок SPF, DKIM та DMARC, щоб листи не летіли в спам.
- Сучасне шифрування: повна підтримка протоколів безпеки SSL та TLS для захищеного з'єднання з поштовими серверами.
- Розумна обробка помилок: має потужний режим відлагодження (SMTPDebug). Замість білої сторінки або мовчання ви отримуєте детальний покроковий лог спілкування вашого сервера з поштовиком, де чітко видно, чому саме не пройшов лист (невірний пароль, заблокований порт тощо).
- Гнучка робота з контентом:
- Автоматично створює альтернативну текстову версію листа (AltBody) для старих поштових клієнтів, якщо ви відправляєте HTML.
- Кодування та мови: безпроблемна робота з UTF-8 та іншими кодуваннями. Символи в іменах відправників чи темах листів (наприклад, кирилиця або емодзі) ніколи не перетворяться на крякозябли.
- Величезна спільнота та підтримка: бібліотека активно оновлюється під нові версії PHP та вимоги безпеки.
Ключові можливості
Повний контроль SMTP-транспорту
- Шифрування з вибором схеми: STARTTLS, SMTPS (SSL), без шифрування
- Налаштування таймауту, типу автентифікації (LOGIN, PLAIN, CRAM-MD5, XOAUTH2)
- Підтримка самопідписаних TLS-сертифікатів для тестування та внутрішніх relay-серверів
- Окремі поля для From email / From name з fallback на налаштування магазину
OAuth 2 без зовнішніх залежностей
- Підтримка Google (Gmail, Google Workspace), Microsoft 365 / Azure AD, Yahoo
- Можливість вказати власний token endpoint для будь-якого OAuth 2-сумісного провайдера
- Власна реалізація обміну refresh_token на access_token (без league/oauth2-google та інших Composer-залежностей)
- Автоматичний кеш access_token з врахуванням TTL
DKIM-підпис вихідних листів
- Налаштування домену, селектора та приватного ключа прямо у формі модуля
- Підтримка ключів з парольною фразою
- Власне поле Identity (за замовчуванням використовується адреса відправника)
Логування та діагностика
- 4 рівня дебагу (1 - клієнт, 2 - клієнт+сервер, 3 - з'єднання, 4 - низькорівневі дані)
- Запис відладки у файл
- Кнопка "Надіслати тестовий лист" з виводом результату і хвоста debug-логу прямо у формі
Перевірка оновлень PHPMailer
- У тулбарі модуля - бейдж з поточною версією вендорованого PHPMailer і кольоровим індикатором стану
- Перевірка враховує поточну версію PHP сервера
- Дані перевірки кешуються для запобігання зайвих звернень до GitHub API
Безпечна архітектура
- Мінімальний OCMOD: лише додавання опції phpmailer в налаштування системи
- При вимкненні модуля поштовий потік не ламається
- Fallback на legacy SMTP-поля з налаштувань, якщо модуль вимкнено або не налаштовано
Швидкий старт
◦ Завантажте архів модуля через Доповнення → Установка доповнень
◦ Активуйте модуль у Доповнення → Доповнення → Модулі
◦ У Система → Налаштування → [магазин] → Пошта оберіть Поштовий протокол = "PHPMailer (FlexiMail)"
◦ Активуйте модуль у Доповнення → Доповнення → Модулі
◦ Натисніть Редагувати на рядку FlexiMail
◦ Приклад для Gmail: На табі "SMTP" заповніть:
- Host: `smtp.gmail.com` (без префікса `tls://`)
- Port: `587`
- Encryption: `STARTTLS`
- Username: ваша Gmail-адреса
- Password: App Password (отриманий за посиланням https://security.google.com/settings/security/apppasswords)
◦ Збережіть налаштування
◦ На табі "Лог і тест" натисніть "Надіслати тестовий лист"
◦ У Google Cloud Console створіть OAuth 2 Client ID (тип "Web application")
◦ Додайте `https://developers.google.com/oauthplayground` у Authorized redirect URIs
◦ У [OAuth 2 Playground](https://developers.google.com/oauthplayground) увімкніть власні credentials у налаштуваннях
◦ Авторизуйтесь і отримайте refresh_token для scope `https://mail.google.com/`
◦ У FlexiMail на табі "SMTP" встановіть Auth Type = `XOAUTH2`
◦ На табі "OAuth 2" заповніть:
- Provider: `Google (Gmail / Workspace)`
- Client ID, Client Secret з Google Cloud Console
- Refresh Token з Playground
- User Email: ваша Gmail-адреса
◦ Збережіть і запустіть тестове надсилання
DKIM-підпис (опціонально)
◦ Згенеруйте RSA-ключ: `openssl genrsa -out dkim.private.pem 2048`
◦ Витягніть публічну частину: `openssl rsa -in dkim.private.pem -pubout`
◦ Додайте публічний ключ у DNS вашого домену як TXT-запис `<selector>._domainkey.<domain>`
◦ У FlexiMail на табі DKIM:
- Увімкніть DKIM-підпис
- Вкажіть домен
- Вкажіть селектор (наприклад, `default`)
- Вставте вміст файлу `dkim.private.pem` у поле "Приватний ключ"
◦ Запустіть тестове надсилання і перевірте підпис через mail-tester.com
Сумісність
- OpenCart/ocStore 3.0.x** (тестувалось на 3.0.3.x - 3.0.5.x).
- PHP 7.4+
- PHPMailer 6.12.0 (включено у дистрибутив)
ЗРОБЛЕНО З
В
Характеристики
-
1
-
Зараз на сторінці 0 користувачів
- Ні користувачів, які переглядиють цю сторінку