
Описание
По подразбиране WordPress изпраща имейлите с PHP функцията mail(). Много хостинг доставчици я блокират, а спам филтрите не ѝ се доверяват, затова имейлите за смяна на парола, потвържденията на поръчки и съобщенията от контактни форми се губят. Symelo SMTP изпраща всеки имейл на WordPress през истинска имейл услуга и ви показва точно какво се е случило с всеки от тях.
Поддържани услуги
- Other SMTP, с готови настройки за популярните доставчици
- Gmail / Google Workspace (OAuth, без съхранена парола)
- Microsoft 365 / Outlook (OAuth през Microsoft Graph)
- Amazon SES
- Brevo
- Mailgun (САЩ и ЕС)
- SendGrid
- Postmark
- SendLayer
- Resend
- SMTP2GO
- SparkPost (САЩ и ЕС)
- Mailjet
Възможности
- Резервна връзка: ако основната връзка се провали, имейлът се изпраща през втора.
- Журнал на имейлите с търсене, филтри, безопасен преглед, повторно изпращане и експорт в CSV.
- Известия за неуспешни имейли в Slack, Discord, Microsoft Teams или към произволен webhook.
- Инструмент за тестов имейл с разбираеми подсказки за отстраняване на проблеми.
- Режим „Log only“ за тестови (staging) сайтове: имейлите се записват, без да се изпращат.
- Адрес и име на подателя (From) за всяка връзка. По подразбиране адресът се използва за всеки имейл, за да не отхвърлят доставчиците адресите, зададени от други плъгини; името също може да бъде наложено.
- Данните за достъп се пазят криптирани в базата данни и никога не се връщат към браузъра.
- Всичко може да се настрои с константи в wp-config.php.
- Проверки в „Здраве на сайта“, джаджа в таблото и команди за WP-CLI.
- Инструменти за поверителност: записите в журнала се включват в експорта и изтриването на лични данни в WordPress.
- Съвместим с мрежи от сайтове (Multisite).
Външни услуги
Symelo SMTP не изпраща нищо никъде, докато не добавите връзка или канал за известия. След това се свързва само с избраните от вас услуги, както е описано по-долу. Плъгинът никога не изпраща нищо до Symelo LTD: няма проследяване и няма статистика за използването.
Имейл услуги. Всеки имейл отива само до услугата на връзката, която го изпраща: основната връзка, а резервната — само когато основната се провали. Тестовите имейли и имейлите, които изпращате повторно от журнала, следват същия маршрут, освен ако не изберете конкретна връзка за тестовия имейл. Услугата получава целия имейл (адресите From, To, Cc, Bcc и Reply-To, темата, съобщението, заглавките и прикачените файлове) заедно с данните за достъп на връзката (API ключ, SMTP потребителско име и парола или OAuth токен за достъп). API заявките се представят с user agent SymeloSMTP/<version>, който съдържа адреса на сайта ви.
- Amazon SES (Amazon Web Services), използва се от връзка Amazon SES. Имейлите отиват до
email.{region}.amazonaws.comв избрания от вас регион. Заявките се подписват с вашия ключ за достъп; самият таен ключ за достъп никога не се изпраща. Клиентско споразумение на AWS, Условия за услугите на AWS, Известие за поверителност на AWS. - Brevo, използва се от връзка Brevo. Имейлите и вашият API ключ отиват до
api.brevo.com. Условия за ползване, Политика за поверителност. - Mailgun (Sinch), използва се от връзка Mailgun. Имейлите и вашият API ключ отиват до
api.mailgun.netили, за региона на ЕС, доapi.eu.mailgun.net. Условия за ползване, Политика за поверителност. - SendGrid (Twilio), използва се от връзка SendGrid. Имейлите и вашият API ключ отиват до
api.sendgrid.comили, за региона на ЕС, доapi.eu.sendgrid.com. Условия за ползване на Twilio, Известие за поверителност на Twilio. - Postmark (ActiveCampaign), използва се от връзка Postmark. Имейлите и вашият сървърен API токен отиват до
api.postmarkapp.com. Условия за ползване, Политика за поверителност. - SendLayer, използва се от връзка SendLayer. Имейлите и вашият API ключ отиват до
console.sendlayer.com. Условия за ползване, Политика за поверителност. - Resend, използва се от връзка Resend. Имейлите и вашият API ключ отиват до
api.resend.com. Условия за ползване, Политика за поверителност. - SMTP2GO, използва се от връзка SMTP2GO. Имейлите и вашият API ключ отиват до
api.smtp2go.comили до крайната му точка в САЩ, ЕС или Австралия, ако изберете такава. Условия за ползване, Политика за поверителност. - SparkPost (вече част от Bird), използва се от връзка SparkPost. Имейлите и вашият API ключ отиват до
api.sparkpost.comили, за региона на ЕС, доapi.eu.sparkpost.com. Условия за ползване, Политика за поверителност. - Mailjet (Sinch), използва се от връзка Mailjet. Имейлите, вашият API ключ и вашият таен ключ отиват до
api.mailjet.com. Условия за ползване, Политика за поверителност. - Gmail / Google Workspace (Google), използва се от връзка Gmail. Когато натиснете „Sign in with Google“, браузърът ви отваря страницата за вход на Google (
accounts.google.com). След това сайтът ви изпраща кода за оторизация заедно с вашите client ID и client secret доoauth2.googleapis.com, за да получи токени, а по-късно изпраща там токена за опресняване (refresh token), за да ги поднови: когато изтекат и веднъж седмично чрез ежедневната задача за поддръжка, ако връзката не е била използвана. Имейлите отиват до Gmail API (gmail.googleapis.com) с токена за достъп. При прекъсване или изтриване на връзката токенът за опресняване се изпраща до крайната точка на Google за отнемане на достъп (oauth2.googleapis.com/revoke). Общи условия на Google, Условия за ползване на Google APIs, Политика за поверителност на Google. - Microsoft 365 / Outlook (платформата за самоличност на Microsoft и Microsoft Graph), използва се от връзка Microsoft 365 / Outlook. Когато натиснете „Sign in with Microsoft“, браузърът ви отваря страницата за вход на Microsoft (
login.microsoftonline.com). След това сайтът ви изпраща кода за оторизация заедно с вашите client ID и client secret доlogin.microsoftonline.com, за да получи токени, и ги подновява там по същия начин като при Gmail. Веднага след входа той прочита адреса на пощенската кутия от Microsoft Graph (graph.microsoft.com/v1.0/me), а имейлите отиват до Microsoft Graph (graph.microsoft.com/v1.0/me/sendMail) с токена за достъп. Споразумение за услугите на Microsoft, Условия за ползване на Microsoft APIs, Декларация за поверителност на Microsoft. - Other SMTP, използва се от SMTP връзка. Имейлите и вашите SMTP потребителско име и парола отиват до SMTP сървъра, който въведете, при условията за ползване и политиката за поверителност на съответния доставчик. Готовите настройки само попълват хоста и порта на известни сървъри: Gmail, Microsoft 365, Brevo, Mailgun, SendGrid, Postmark, SendLayer, Resend, SMTP2GO, SparkPost, Mailjet и Amazon SES (линковете към условията и политиките им за поверителност са по-горе) и Zoho Mail (Условия за ползване, Политика за поверителност).
- PHP mail() не се свързва с външна услуга: тя предава имейлите на пощенската система на собствения ви сървър.
Известия за неуспехи. Само ако добавите канал за известия в Settings → Alerts. Когато имейл не бъде изпратен (най-много веднъж за периода на ограничение) или когато натиснете „Send test alert“, плъгинът изпраща кратко съобщение до въведения от вас webhook URL: името и адреса на сайта ви, темата и получателите на неуспешния имейл, името на връзката, грешката и линк към записа в журнала. Съдържанието на имейла и данните ви за достъп никога не се включват.
- Slack: входящ webhook (
hooks.slack.com). Условия за ползване, Политика за поверителност. - Discord: webhook на канал (
discord.com). Условия за ползване, Политика за поверителност. - Microsoft Teams: webhook от Teams Workflows (Microsoft Power Automate). Споразумение за услугите на Microsoft, Декларация за поверителност на Microsoft.
- Webhook (JSON): произволен URL адрес, който въведете, например собственият ви сървър или услуга за автоматизация, при условията за ползване и политиката за поверителност на тази услуга. Ако зададете таен ключ за подписване (signing secret), заявките носят HMAC подпис на тялото си; самият таен ключ никога не се изпраща.
Във вашия браузър. Прегледът в журнала на имейлите блокира отдалечените изображения в записаните имейли. Браузърът ви зарежда тези изображения от сървърите, посочени в имейла, само ако натиснете „Load them“. Линковете към symelo.com в раздела Support и в долния колонтитул на администрацията са обикновени линкове: от symelo.com не се зарежда нищо.
За разработчици
Филтри и действия:
symelo_smtp_register_mailers(действие): добавя собствен метод за изпращане с$registry->add( new My_Mailer() ).symelo_smtp_mail_sent/symelo_smtp_mail_failed(действия): реагиране на резултатите от доставката.symelo_smtp_log_row(филтър): променя или пропуска ред от журнала, преди да бъде записан.symelo_smtp_capability(филтър): правото (capability), нужно за управление на плъгина (по подразбиранеmanage_options).symelo_smtp_smtp_presets(филтър): добавя готови SMTP настройки.symelo_smtp_more_from_symelo(филтър): продуктите, показани под „More from Symelo LTD“ в раздела Support.symelo_smtp_http_timeout,symelo_smtp_smtp_timeout(филтри): време за изчакване в секунди.
WP-CLI: wp symelo-smtp status, wp symelo-smtp connections, wp symelo-smtp test <email>, wp symelo-smtp log list, wp symelo-smtp log purge.
Благодарности
Логата на Gmail, Brevo, Mailgun, Resend, SparkPost и PHP са от Simple Icons (CC0). Всички имена на продукти и лога са търговски марки на съответните им притежатели и се използват само за обозначаване на услугите.
Екранни снимки
Документация
Инсталиране
- Качете плъгина и го активирайте.
- Отидете в Symelo SMTP → Settings → Add connection и изберете своя имейл доставчик.
- Изпратете си тестов имейл: Symelo SMTP → Settings, след това разделът Send a Test.
Въпроси
Къде се съхраняват API ключовете ми?
В базата данни на WordPress, криптирани с libsodium. За допълнителна защита задайте в wp-config.php отделен ключ от поне 32 случайни знака. Settings → Advanced показва готов ред със случаен ключ от 64 знака:
define( 'SYMELO_SMTP_KEY', '…64 random characters…' );
По-кратките ключове се игнорират, а разделът Advanced и „Здраве на сайта“ предупреждават за тях.
Мога ли да го настроя в wp-config.php?
Да. Например:
define( 'SYMELO_SMTP_MAILER', 'mailgun' );
define( 'SYMELO_SMTP_API_KEY', '…' );
define( 'SYMELO_SMTP_DOMAIN', 'mg.example.com' );
define( 'SYMELO_SMTP_REGION', 'eu' );
Settings → Advanced изброява всички поддържани константи.
Gmail спира да работи след 7 дни
Приложението ви в Google Cloud е в режим „Testing“. Публикувайте го („In production“) или задайте аудиторията му на „Internal“, ако използвате Google Workspace, след което влезте отново.
Мога ли да го използвам на тестов (staging) сайт?
Да. Включете „Log only“ в Settings → General или задайте SYMELO_SMTP_DELIVERY със стойност log_only. Имейлите се записват в журнала, но никога не се изпращат.
Изпраща ли плъгинът данни до Symelo LTD?
Не. Той се свързва само с имейл услугите и каналите за известия, които сте настроили. Вижте „Външни услуги“ в описанието, за да разберете какво къде се изпраща.
Всички версии
- Първа версия.
SHA-256
c3942a5271fa788e6c49fd2d766d9810156307112ba348ba1b281f5cbfbdd718


