На нашем сайте, как и у многих, есть форма обратной связи, для того, что бы вы могли написать нам ваши пожелания или предложения. В роли плагина для обратной связи мы выбрали Contact Form 7, который показал себя легким в настройке и понятным.
В какой-то момент, возможно из-за постоянных обновлений версий WordPress и соответственно всех установленных плагинов под новую версию движка, произошел сбой. Заметили, что перестали приходить письма через Contact Form 7. В этой статье хочу поделиться с вами последовательностью действий, которые я предпринял для решения проблем, когда не отправляются письма через форму обратной связи.
Почему не работает контактная форма WordPress?
1. Электронное письмо было отправлено, но оно попало в папку спама получателя.
Проверьте, не попадают ли письма от контактной формы в СПАМ?
В моем случае писем входящих в папке СПАМ не было.
2. Некорректная работа плагина обратной связи.
Второе на что я подумал — это не правильно работает плагин формы обратной связи Сontact Form 7. Удалил полностью плагин, установил снова, настроил и проверил. Мне этот способ не подошел, но исключать его не стоит.
3. Письмо не было отправлено из-за ограничений сервера. PHP Mail и SMTP.
В движке WordPress есть встроенная функция PHP Mail, но его работа зависит от настроенного на хостере или VPS сервере сайта SMTP, что не всегда используется. Выход из этой ситуации в том, что мы можем самостоятельно установить SMTP плагин, который позволяет отправлять электронные письма с вашего сайта WordPress через любой из указанных вами SMTP-серверов (mail, yandex, google, rambler и т.д.).
Здесь тоже не все так гладко получилось — установил изначально плагин WP Mail SMTP от WPForms, но и после этого у меня ничего не заработало, несмотря на то, что все введенные данные были корректны.
Тогда я попробовал установить другой SMTP-плагин Easy WP SMTP, с которым мы сошлись сразу.
Настройка плагина Easy WP SMTP простая и следующая.
1. Переходим на вкладку Настройки SMTP:
От кого (Адрес электронной почты): адрес электронной почты, который будет использоваться для отправки электронных писем получателям.
От кого (Имя): имя, которое получатели увидят как часть значения «от» или «отправитель», когда они получат ваше сообщение.
SMTP-хост: ваш сервер исходящей почты (пример: smtp.gmail.com — узнать нужно у соответствующего сервиса, информация в свободном доступе, как и по портам, и шифрованию).
Тип шифрования: нет или SSL / TLS.
Порт SMTP: порт, который будет использоваться для ретрансляции исходящей почты на ваш почтовый сервер (пример: 465/587/80).
Аутентификация SMTP: Да (этот параметр всегда должен быть отмечен «Да»)
Имя пользователя: имя пользователя для почтового SMTP-сервера (пример: adminwin@gmail.com)
Пароль: пароль от указанного почты.
Для Gmail:
SMTP-хост: smtp.gmail.com
Тип шифрования: TLS
Порт SMTP: 587
Для Yandex:
SMTP-хост: smtp.yandex.ru
Тип шифрования: SSL
Порт SMTP: 465
Для Mail:
SMTP-хост: smtp.mail.ru
Тип шифрования: SSL
Порт SMTP: 465
2. После ввода всех настроек переходим на вкладку «Проверочное письмо«.
Заполняем поля: кому, тема, сообщение и нажимаем «Отправить тестовый e-mail«.
Если электронная почта пришла к адресату, то переходите к обратной форме и попробуйте отправить письмо через нее на сайте.
Надеюсь статья помогла и у вас все получилось.