Не отправляется почта из WordPress и не работает визуальный редактор решение с помощью плагинов Configure SMTP и Post Editor Buttons

Решение проблемы отправки почты в wordpress

Привет! Сегодня хочу поговорить об одной очень распространенной проблеме, с которой часто сталкиваются веб-мастера, которые используют движок WordPress. Это проблема с отправкой почты (а точнее ее неотправкой). Когда-то я тоже сталкивался с такой проблемой у себя на блоге (тогда мне не приходили письма с бекапами базы данных). Теперь все чаще меня просят решить эту проблему на других сайтах, поэтому в этой статье я опишу самые распространенные пути решения данной проблемы.

Чаще всего люди жалуются на то, что им на почту не приходят уведомления о новых комментариях, бекапы базы данных, или не приходит письмо с логином и паролем при регистрации.

За отправку почты в WordPress отвечает php функция mail(), с работой которой на некоторых хостингах возникают проблемы. Для начала опишу несколько простейших решений проблемы:

  • Во первых, поинтересуйтесь у вашего хостера, включена ли у вас такая функция mail().
  • Во-вторых, убедитесь, что в вашем профиле администратора указан e-mail адрес
  • И в-третьих, попробуйте создать на хостинге почту вида wordpress@ваш_домен (например wordpress@seostage.ru). Во всех письмах, отправляемых из worpress, в строке отправителя стоит именно этот адрес, но некоторые хостинги не дают отправить письмо с таким мылом, если фактически на сервере его нет.

Если после вышеперечисленных действий почта все еще не отправляется, тогда нужно заставить wordpress отправлять ее через smtp сервер. Для этого можно пойти двумя путями: с помощью плагина, и с помощью внесения изменений в код.

В первом случае я советую использовать плагин Configure smtp, так как он легкий и имеет мало настроек, а если вы используете гуглопочу, то вам вообще нужно ввести только адрес почты и пароль к ней, а плагин сам подставит все настройки.

Как я сказал выше, если вы используете почту Google, то вам необходимо поставить галку Send e-mail via Gmail и заполнить поля SMTP username и SMTP password. Далее сохраняете настройки и нажимаете кнопку “Отправить тестовое письмо” и ждете, пока письмо придет вам на почту. Причем придти оно должно по адресу, указанному в вашем профиле администратора, а ящик, который вы указали в плагине, является как-бы транзитным, то есть используется только для реализации отправки писем через smtp.

Если вы используете почту на другом сервисе, отличном от Google, то вам, помимо логина и пароля необходимо указать и другие настройки (галку Send e-mail via Gmail уже ставить не нужно)

В полях SMTP host и SMTP port указываете соответственно сервер и порт вашего почтового сервиса. Далее по желанию можно указать следующие настройки. Wordwrap length — количество символов в письме до переноса строки. Sender e-mail и Sender name это адрес отправителя, который будет показываться в строке «От» и имя отправителя. Если же не указывать эти параметры, то они по-умолчанию будут браться из настроек вашего блога.

Если же вы не хотите нагружать свой движок дополнительными плагинами, тогда можно решить проблему, добавив изменения в код. Для этого необходимо открыть файл wp-includes/class-phpmailer.php и внести следующие изменения. (ниже представлены куски кода, в которые внесены изменения; — обозначает пропуск кода) Данный способ представил Lecactus

После всех вышеперечисленных действий проблемы с отправкой почты в wordpress, должны исчезнуть. Не забывайте подписываться на обновления моего блога. Желаю удачи! 🙂

Что делать если не работает форма обратной связи? Настройка почты на WordPress

Всем привет!

Наличие обратной связи – необходимый элемент для любого сайта. Его можно настроить разными способами, однако самым удобным и распространенным из них считается плагин Сontact Form 7, о котором мы уже не раз говорили. Вот подробная статья про плагин Contact Form.

Плагин достаточно прост в управлении и настройке. Впрочем, и с ним возможны неполадки. Причин тому, что не работает Contact form 7 на WordPress может быть несколько. Приведем наиболее распространенные из них.

Почему не работает контактная форма WordPress?

Неподходящая тема или ошибка в теме

Частая проблема, из-за которой не работает контактная форма WordPress – неподходящая тема или же ошибки в Javascript-е темы. Для того чтобы понять, по этой ли причине у вас не работает форма обратной связи WordPress, нужно зайти в админку и выбрать вкладку «Темы». Там поменять шаблон на «тему по умолчанию» и после этого проверить работу отправки сообщений и внешний вид контактной формы. Если после этого сообщения отправляются, и почта работает – значит, нужно править ошибки в выбранной вами теме, так как из-за нее и не отправляется сообщение.

Несоответствие плагинов с Contact Form 7

Плагин для WordPress Contact Form 7 может не работать из-за того, что другие плагины на вашем сайте конфликтуют с ним, и в результате Вордпресс не отправляет почту. Чтобы исключить данную проблему – поочередно отключаем остальные плагины один за одним, каждый раз обновляя страницу обратной связи. Если после отключения одного из плагинов, контактная форма заработала, значит вы нашли корень проблемы. Ищите, чем заменить конфликтующий плагин. Если же вы отключили все плагины, а Contact Form 7 так и не работает, ищем ошибку дальше.

Письма попадают в спам

Возможен вариант, что письма попадают в спам. Если писем ежедневно приходит достаточно большое количество, спам-фильтр может начать их блокировать. Чтобы избежать этого, нужно зайти в настройки почты, которую вы используете для Вордпресс-блога, и отметить важные письма как не спам (если вы все-таки нашли их в папке со спамом). После того, почтовый сервис должен впредь их распознавать как не спамные.

Проверить работу обратной связи без плагина

Вы можете протестировать отправку почты на своем блоге без участия плагина. Вот статья о том, как это сделать – «Форма обратной связи WordPress с плагином и без него». Это верный способ узнать, где спряталась ошибка – в самом плагине Contact Form, либо же она возникает непосредственно при отправке почты в WordPress.

Проблема вызвана хостингом

Чаще всего это выглядит так: сообщение отправляется, но не приходит на почту.

Бывает, что по какой-то причине (например, в случае атаки на сервер или же массовой рассылки писем) хостинг перестал отправлять письма. В этом случае настройка отправки почты на WordPress без участия вашего провайдера не обойдется. Необходимо связаться с технической поддержкой вашего хостинг-провайдера и выяснить причины проблемы. В данном случае вы не будете получать письма не только из контактной формы WordPress, но и сообщения о новых комментариях на блоге.

Но чаще всего подобные проблемы возникают при переезде на новый хостинг. В данном случае вам нужно обратить внимание на настройку почты на WordPress.

Плагин WP Mail SMTP

В Вордпресс есть встроенная функция отправки писем PHP Mail, но не на всех хостингах она работает корректно. Потому, если Вордпресс не отправляет почту, потребуется установить плагин WP Mail SMTP. Он активизирует возможность подключаться к SMTP-серверу. При этом ваш хостинг-провайдер должен допускать возможность подключения к внешним SMTP-серверам, а объем рассылок в день не должен превышать 2000 писем (ограничения Гугл и Яндекса).

Если данные условия соблюдены, переходим к установке плагина WP Mail SMTP.

После того, как плагин установлен, потребуется создать почтовый ящик на Gmail, либо на Яндексе. Почту для домена на Яндексе можно создать перейдя по ссылке — https://pdd.yandex.ru/domains_add/ .

Если вы создаете почтовый ящик блога на стороннем ресурсе, а не на хостинге, у вас появится ряд преимуществ. Вы не будете зависеть от стабильности работы хостинга, вам не придется доплачивать за увеличение объемов почты. Кроме того, работать в привычном интерфейсе почтового сервиса удобнее.

Ниже приведен образец настройки WP Mail SMTP на WordPress на примере e-mail на Yandex.ru.

Где SMTP Port – это SMTP порт сервера, на котором размещен почтовый ящик (в моем примере – SMTP порт Яндекс-почты).

Вместо имя@pro-wordpress.ru вы вписываете название почтового ящика, который создали для вашего домена (любое имя @ название домена).

Такой же почтовый адрес вам необходимо указать в общих параметрах блога («Параметры» — «Общие настройки»).

Именно сюда вам должно прийти тестовое письмо, если все настроено верно.

Вот видео-инструкция о том, как настроить WP Mail SMTP:

Еще один плагин почты для WordPress, который похожим образом решает вопросы отправки-получения писем — Configure SMTP. Он так же достаточно прост в установке и настройке. Выбирайте тот плагин, который вам больше по душе.

Если вы все же не хотите создавать почтовый ящик на Яндексе или Гмейле, можно попробовать решить проблему с отправкой почты на Вордпресс и непосредственно на хостинге. Для этого вам также потребуется создать почтовый ящик, но на хостинге. При этом он должен быть такого вида: wordpress@pro-wordpress.ru (где после собачки – название вашего домена).

Дело в том, что WordPress в строке отправителя указывает такой адрес, а некоторые хостинги не отправляют почту, если такого е-мэйла не существует фактически.

По такому же принципу можно устранить некоторые неполадки, если не работает Contact Form 7 на WordPress. В поле From при настройке плагина на вкладке «Письмо» впишите подобный почтовый адрес с именем домена.

Надеюсь, приведенные советы помогут вам исправить неполадки при отправке почты в WordPress, а также решить проблемы с работой плагина Contact Form.

Настроить отправку email писем в WordPress

Если вы на своём сайте активно используете email, а именно формы обратной связи, например, Contact Form 7, форумы с рассылкой сообщений или иные социальные плагины, то наверняка часто сталкивались с такой проблемой, как пропадание писем, попадание их в спам и т.д. Как этого избежать, поговорим далее.

Почему email не доставляются и пропадают

Письма могут пропадать в силу нескольких причин. Первая и самая главная — ваш email приняли за спам. Любой серьёзный почтовый сервис имеет свой мощный антиспам-модуль c эвристическим анализом содержимого email, не говоря уже о чёрном списке адресов. Поэтому, не переусердствуйте с рассылкой, чтобы не попасть в чёрный список спамеров.
Также, в спам попадут не подписанные электронной подписью письма. То есть, любой может отправить фишинговое письмо, скажем, от имени [email protected], однако, это будет безуспешно, т.к. отправитель вряд ли сможет подтвердить, что оно было отправлено с этого адреса. Для проверки легитимности используются подписи DKIM (DomainKeys Identified Mail) и SPF (Sender Policy Framework) записи.

Что сделать, чтобы письма доходили до адресата

Не переусердствуйте с рассылкой и настройте свой SMTP-сервер, чтобы исходящие email подписывались DCIM- и SPF-подписями. Вы можете настроить свой SMTP сервер, но чтобы не заморачиваться с настройкой, можно привязать домен к Яндекс.ПДД или Google Apps for Business и отправлять email через их сервис, и тогда все нужные заголовки будут прописываться автоматом. Но тут есть 2 оговорки

  1. Ваш хостинг-провайдер должен разрешать исходящие соединения, чтобы была возможность подключиться к внешнему SMTP серверу
  2. Объём рассылки не превышает 2000 писем в день. Это лимит Google, у Yandex вряд ли больше

Если вы укладываетесь в вышеуказанные рамки, тогда вперёд, настроим подключение

Как настроить подключение SMTP

Чтобы настроить нормальную отправку писем, нужно установить плагин WP Mail SMTP. Он позволяет переконфигурировать стандартный PHP Mailer так, чтобы была возможность подключаться к SMTP серверу. Также, советую использовать его, если вы пользуетесь локальным сервером.

Настройка будет происходить под Яндекс. Гугл отметается, так как теперь там нет бесплатных тарифов

Настройка WP Mail SMTP


А вот описание опций

  • From Email — email отправителя. Вводим логин от почты полностью как на изображении вверху
  • From Name — Имя отправителя. Можете поставить сюда что хотите, например, адрес вашего сайта
  • Mailer — выбираем Send all WordPress emails via SMTP
  • Return Path — оставляем пустым
  • SMTP Host — адрес SMTP сервера. Вводим smtp.yandex.ru
  • SMTP Port — порт SMTP сервера. Вводим 465
  • Encryption — тип шифровки писем. Вводим Use SSL encryption
  • Authentication — авторизация. Выбираем Yes: Use SMTP authentication
  • Username — логин от почты. Значение должно совпадать с From Email

Если логин вида [email protected] , то нужно вписывать просто login , без @yandex.ru

Если SSL не сработал, можно попробовать следующие настройки:

Когда всё настроите, можете проверить, как получилось. Для этого введите в разделе ниже Send a Test Email ваш email, отправьте тестовое письмо и проверьте почту. Если всё в порядке, оно должно находиться там.

Настройка Contact Form 7

Допустим, мы зарегистрировали email [email protected] и внесли его в настройки WP Mail SMTP , тогда его нужно прописать в форме Contact Form 7 в разделе Письмо в поле От кого:

Не обращайте внимания на ошибку: Электронный адрес отправителя не принадлежит домену сайта., email будут отправляться верно с этого адреса.

Установка и настройка почтового сервера

Если лимиты внешнего SMTP-сервера не устраивают, можно использовать свой серверный вариант: установить Postifx или Sendmail. Оба отвечают за работу с email, в частности, их отправку и пересылку.

Установка происходит с помощью введения команд в консоль SSH. Инструменты: Far Manager или putty. Если работа не под root , не забываем перед командами давать sudo

Установка Postfix

В процессе установки будут заданы вопросы относительно настройки. Важно выбрать тип Internet Site. Это необходимо сделать для того, чтобы Postfix сгенерировал файл main.cf и сразу начал работу. В противном случае, Вам необходимо будет настраивать его вручную.

Установка Sendmail

Sendmail устанавливается примерно так же

Потом его сконфигурировать

После всего этого перезагрузить сервер

Что делать, если email не доходит

  1. Проверить правильность адреса, куда почта должна придти;
  2. Проверить папку Спам;
  3. Выждать пару минут.

Если по истечению времени письмо таки не дошло в почтовый ящик, хотя плагин просигнализировал об успешной отправке сообщения, возможно, хостинг не настроен должным образом.
Возможно, php просто не может отправлять письма.

Как проверить отправку email в PHP

3 команды, которые нужно ввести в консоль SSH последовательно:

[email protected] — это адрес, куда надо доставить тестовое письмо.
Если PHP не настроен на работу в консоли, можно попробовать следующее:

  1. Создать файл test_email.php ;
  2. Прописать туда:
  3. Запустить файл командой

Если на данном этапе возникает ошибка, попробуйте переустановить и правильно сконфигурировать Postfix или Sendmail.

Как вариант, ещё стоит попробовать проверить sendmail_path в php.ini .

В заключение

Отправка писем с помощью SMTP-сервера — это правильный подход к делу. Всегда используйте его, дабы это возможно практически на любом хостинге, и пусть ваши email доходят до адресата.
Если у вас возникли вопросы, что-то не получилось или не работает, пишите в комментариях, решим проблему.

Не отправляется почта в WordPress

Нередко пользователи WordPress сталкиваются с проблемой доставки e-mail. Это случается, когда, например, контактная форма не отправляет электронные письма пользователям или администратору сайта не приходят уведомления об отправке, о новых комментариях или созданных резервных копиях.

Наиболее частыми причинами этому являются, например, неправильные настройки сайта или ограничения хостинга.

Неправильные настройки сайта

Иногда случается, что в настройках WordPress-сайта указан неправильный или несуществующий адрес электронной почты, от имени которого и на который должны отправляться письма. Это довольно просто проверить, перейдя в админ-раздел Настройки -> Общие. На странице общих настроек, в поле Адрес e-mail, нужно удостовериться в правильности указанного адреса.

Ограничения хостинга

Часто владельцы WordPress-сайтов используют в качестве основного e-mail-адреса почтовый ящик, созданный на хостинге. Иногда из-за выставленных лимитов сервера письма с таких ящиков могут не отсылаться. Обычно такое происходит на дешевых виртуальных хостингах. Эти ограничения указываются в списке доступных услуг того или иного тарифного плана хостинга. Кроме того, эти лимиты можно выяснить, обратившись в техподдержку.

Как в WordPress настроить отправку почты?

Что же делать, если ничего не помогает, и почта не отправляется вообще? Для корректной работы почты в WordPress рекомендуется использовать SMTP (Simple Mail Transfer Protocol). Этот протокол относится к отраслевым стандартам, и в отличие от функции mail(), использует аутентификацию, которая повышает вероятность доставки электронной почты.

Плагин WP Mail SMTP

В большинстве случаев почтовые системы, будь то инструменты хостинга или сторонние сервисы (например, Gmail), обеспечивают работу отправки/приема электронной почты по протоколу SMTP.

Особенностью плагина WP Mail SMTP является возможность использования внешнего SMTP-сервера. Можно даже, например, создать бесплатный почтовый ящик на Gmail и использовать общий SMTP-сервер от Google.

Для начала плагин WP Mail SMTP нужно установить и активировать, после чего перейти в админ-раздел Настройки -> WP Mail SMTP на страницу настроек.

Видно, что плагин имеет небольшое количество настроек, и все они довольно понятные. Итак, в поле От (адрес) нужно ввести адрес e-mail, который будет использоваться для отправки писем с сайта.

Поле От имени служит для указания имени, которое увидит получатель письма. Обычно тут указывается имя сайта или компании.

В настройке Метод отправки почты задается адрес того самого SMTP-сервера. Видно, что в плагине есть уже предустановленные сервера от самых популярных почтовых систем (Gmail, Mailgun, SendGrid). Если Вы будете использовать какой-либо другой SMTP-сервер, то для этого нужно отметить пункт Прочие SMTP. В итоге появится форма, в которой нужно будет ввести необходимые данные для подключения к внешнему SMTP-серверу. Тут нужно указать адрес сервера, порт, шифрование. Для применения всех настроек нужно нажать кнопку Сохранить настройки.

Для проверки работы можно отправить тестовое письмо. Для этого нужно перейти на вкладку Проверка почты, ввести адрес e-mail и нажать кнопку Отправить email.

Dobrovoi Master

Плагин Configure SMTP — решение проблем с отправкой писем в WordPress

Не часто пишу о WordPress, так как про него пишут практически все и много, видимо так действует этот движок на народ, сродни эпидемии. Вот и меня зацепила зараза, и все из за возникшей проблемы с доставкой писем через WP. Как оказалось существует этот неприятный глюк давно и периодически дает о себе знать многим кто работает с WordPress. Вообще этот движок не дает расслабиться и постоянно приходится орудовать лопатой разгребая кучу проблем возникающих в процессе ведения блога.

Накатил косяк с не отправкой писем, после переезда на новый хостинг и обновления движка . Тихо-мирно, после обновы, решил проверить форму обратной связи, а так же отправить бекап базы данных к себе на почту. Письма вроде бы и уходили, а в почтовом ящике тишина и спокойствие. Конечно я воспринял все это без истерики, уже привык к выкидонам движка. Перекурив и собравшись с мыслями стал искать решение и способ устранения неполадок.
Первым делом пробил свой хостинг на наличие поддержки функции mail (), все в порядке оказалось. Cтал искать способ для отправки писем через SMTP.
Решений как оказалось предлагают много, например Lecactus предложил немного подправить код в файле wp-includes/class-phpmailer.php. Вариант по исполнению отличный, но мне не помог.
Тут «понеслась душа в рай», в ход пошли один плагин за другим, ставил разные и много, но по тем или иным причинам отказывался от их использования.
Создание e-mail вида wordpress@имя_домена, по ряду причин тоже не принесло положительных результатов.
Когда стал закипать мозг и сходиться глаза в кучу, натолкнулся на неприметный такой плагинчик Configure SMTP . У нас описание этого плагина встретил лишь один раз и то поверхностное, может просто плохо искал. Решительно зашел к автору на сайт, почитал в меру своих знаний буржуинского и решил попробовать до кучи еще и этот способ. Поставил плагин к себе на блог и несмотря на всю невзрачность и легковесность, помог «буржуинский бродяга» измученному Российскому пользователю, пошли письма на почту, и самое главное стали доходить до адресата.

И так давайте подробно рассмотрим работу плагина для настройки SMTP рассылки в WordPress:

Configure SMTP

Плагин Configure SMTP используется для настройки SMTP рассылки в WordPress, в том числе поддержки отправки электронной почты через SSL/TLS (например, Gmail). Практически заставляет WordPress отправлять почту не через php-функцию mail() , через sendmail хостингового сервера, а через smtp какого-либо другого сервера.

Для начала работы следует скачать плагин с авторской площадки Configure SMTP. Затем по накатанной, установить плагин к себе на блог в папку с плагинами . wp-content/plugins, смело активировать его через «меню администратора Плагины» в WordPress и перейти к не хитрым настройкам, через админ панель SMTP, которая появится в админке после активации.
Настроек плагин содержит не очень много и вы без труда сможете со всем разобраться, для большей наглядности можете посмотреть скриншот панели управления6

Теперь давайте разберем по пунктам, что да как настраивать.

Send e-mail via GMail ? — Если желаете использовать службу Gmail для отправки почты, отмечаете галочкой и параметры Gmail выставятся автоматом, вам останется только ввести свое имя пользователя и пароль. В случае же использования другого сервера, прописываем параметры smtp своего почтового сервера и соответственно отмечать первый пункт не надо.

SMTP host — По умолчанию стоит «localhost» , если у вас не работает следовательно прописываете свой, например для Yandex — почты это будет smtp.yandex.ru

SMTP port — Номер порта, как правило это 25

Secure connection prefix — Выбор префикса для безопасных соединений SMTP через SSL или TLS

Use SMTPAuth? — Если Аутентификация установлена то необходимо предоставить имя пользователя SMTP и пароль, что и следует сделать в следующих пунктах.

SMTP username — Имя пользователя SMTP ( ваш почтовый ящик )

SMTP password — Просто пароль к вашей почте и все.

Wordwrap length — Задаете, если уж больно приспичит, число символов сообщения при переносе слов.

Следующие два пункта можно оставить как есть, тогда будут использованы настройки по умолчанию или же прописать свои данные:

Sender e-mail — Наборы адресов электронной почты для всех исходящих сообщений. Оставьте пустым, чтобы использовать по умолчанию WordPress.

Sender name — Имя или список имен, от кого будут отправлены сообщения. Оставьте пустым, чтобы использовать по умолчанию WordPress.

Все, больше никаких настроек у плагина нет, он полностью готов к работе, осталось только сохранить все изменения, с уверенным видом нажав на кнопку «Save Changes»
В плагине присутствует очень полезная фишка, сразу после настройки, вам предоставляется возможность протестировать отправку электронной почты и удостовериться в правильности настроек вашего блога на работу с почтой. Для этого, в самом низу панели управления плагином, легким нажатием на кнопку «Send test e-mail» отправляется тестовое сообщение на ваш e-mail.
Проверяете почтовый ящик и любуетесь доставленной корреспонденцией в полном объеме.

Разработчики плагина нестоят на месте и оперативно выпустили в свет обновленную версию своего детища, это конечно радует. Для меня остается загадкой одно, почему сам обновленный движок WP 3.0.1 упорно продолжает игнорировать досадный глюк с отправкой писем.

Автор: Скотт Райли
Версия: 3.0.1
Последнее обновление: 2010-09-29
Совместимость: WP 2.8 — 3.0.1
Скачать обновленную версию: [ ZIP ]

В свое время, чисто для себя сделал перевод плагина configure-smtp 2.7, переводить там в принципе особенно и нечего, все интуитивно понятно и так, но хочется все же читать на родном языке о том, что делаешь в плане настроек. Так что кого заинтересует можете скачать и протестировать русскоязычный плагин Configure SMTP версии 2.7:

Скачать русскую версию плагина: [ ZIP ]

WP Magazine

Про WordPress на русском языке

Конфигурация SMTP в WordPress

Если на вашем сайте открытая регистрация или есть форум с оповещениями, то сайт наверняка отправляет немало писем по электронной почте. Все они, по умолчанию, отправляются через стандартный системный транспорт. Такой простой подход не требует дополнительных настроек, а письма отправляются весьма быстро. Однако, это накладывает и серьезные недостатки.

С ростом количества писем и их важности такой подход уже с натяжкой можно назвать допустимым и нередки случаи возникновения проблем. Например, ваши письма, отправленные сайтом, могут попадать в спам или не доходить до получателя вообще.

В большинстве случаев решением может стать отправка писем через сторонние сервисы, например Gmail или Яндекс почта для домена (ПДД). Также можно настроить отправку писем через ваш собственный почтовый сервер, который, как правило, есть даже на самом простом веб-хостинге.

Минусы отправки писем через системный транспорт

Как было отмечено выше, отправка писем в WordPress, по умолчанию, работает без дополнительных настроек, но цена этому весьма высока.

Письма могут попадать в спам

Обо всех спам-фильтрах и методах проверки писем, работающих, например, на Яндекс Почте или Gmail пожалуй знают лишь сотрудники этих компаний. Несмотря на большое количество закрытых от посторонних глаз инструментов для проверки входящих отправлений, есть несколько вещей, которые могут повысить доверие почтового сервиса к вашим письмам.

Письмо, отправленное через системный транспорт, не содержит дополнительных электронных подписей, которые могут свидетельствовать о надежности и легитимности отправителя. Пожалуй, многие знают, что любой человек может отправить письмо с чужого адреса, например, с admin@wpmag.ru не имея какого-либо доступа к самому домену и сайту.

Отправка писем через почтовый сервис позволит автоматически добавлять DKIM-подписи, свидетельствующие о надежности и легитимности отправителя. Отправляющие сервера (SMTP-серверы) Яндекс Почты и Gmail автоматически добавляют DKIM-подписи к каждому письму. С ними лишь владелец домена (и закрытого ключа DKIM) может отправлять письма с верными DKIM-подписями.

DKIM-подписи не отменяют того, что кто-то другой сможет отправить письмо используя ваш адрес (admin@wpmag.ru), но принимающий почтовый сервер будет видеть, что письмо отправил кто-то другой, а не владелец домена.

SPF-записи устанавливаются в настройках домена (DNS) и позволяют владельцу домена показать почтовым сервисам с каких серверов могут отправляться письма этого домена. Каждый почтовый сервис предлагает свою собственную SPF-запись со своим списком серверов. Если вы отправляете письма через Яндекс почту и делаете рассылки через Mailchimp, то необходимо совместить их SPF-записи в одну.

Письма могут пропадать

Еще один прием, который используется почтовиками для отсеивания плохих писем — это Greylisting. Здесь, в момент отправки письма, получающий сервер может ответить вашему сайту что-то вроде «я сейчас занят, зайди с этим письмом минут через десять». Сайт не знает что делать в таком случае — письмо было передано для отправки, на этом все, поэтому отправляемое письмо просто пропадет и не будет доставлено адресату.

Если ваше письмо отправляется почтовым сервисом, то ваш отправляющий сервер скажет «окей, гугл», отложит письмо в очередь неотправленной почты и будет пытаться доставить его еще несколько раз. Расчет прост — при отправке огромного количества почты за короткий промежуток времени, как это обычно делают спамеры, нет времени пытаться доставить письмо несколько раз.

Не дойти письмо может и в случае, если получающий сервер просто на время выключен или потерял доступ к сети. Поэтому отправка писем через SMTP более надежная.

Отправка писем через SMTP

Принципиальной разницы между отправкой через внешний почтовый сервис (Яндекс Почта, Gmail) или свой собственный SMTP-сервер нет. Это одно и тоже. Но если вы решили использовать свой собственный или выделенный хостингом SMTP-сервер, следует внимательно отнестись к его настройкам. Не забудьте установить правильные DKIM- и SPF-записи в настройках домена.

Google и Яндекс не запрещают отправку писем через свои сервера подобным образом, но имеют некоторые ограничения на количество отправляемых сообщений в день. Например, Gmail имеет явно указанное ограничение в 2000 писем в день. Яндекс не сообщает конкретных цифр, а служба поддержки намекнула, что этот показатель динамический.

Заметим, что на многих хостинг-площадках подключения к внешним серверам блокируются (информацию можно получить в поддержке хостинга или с помощью команды telnet ). В этом случае можно попросить поддержку хостинга разрешить подключения. Иногда такие просьбы могут принять во внимание. Или использовать внутренний почтовый сервер предоставляемый хостинг-провайдером. Как правило, он будет работать даже быстрее, чем внешний, потому что обычно располагается на том же физическом сервере, что и ваш сайт (веб-сервер).

На личном опыте было замечено, что Яндекс Почта для домена не сохраняет письма отправленные через SMTP-сервер в папке исходящих сообщений, а Gmail сохраняет.

Плагин WP Mail SMTP

Все письма в WordPress отправляются с помощью функции wp_mail() , которая работает на популярной библиотеке PHP Mailer. Чтобы позволить WordPress и wp_mail() отправлять письма через SMTP-сервер необходимо установить и настроить плагин WP Mail SMTP из официальной директории WordPress.org.

Активировав плагин, перейдите в раздел Настройки → Email в панели управления.

Конфигурация плагина WP Mail SMTP

Займемся настройкой на странице Advanced Email Options. Ниже указано описание и необходимые значения для каждого пункта.

From Email — адрес, с которого будут отправляться письма и на который получатель отправит ответ, нажав на кнопку «Ответить» в своей почте.

From Name — имя отправителя, можно указать название сайта или свое имя и фамилию.

Mailer — отправка писем через системный транспорт (функция mail() ) или через SMTP-сервер. Выбираем «Send all WordPress emails via SMTP».

SMTP Host — адрес SMTP-сервера. Можно узнать у службы поддержки или в справочном разделе. Для Яндекс Почты используйте smtp.yandex.ru , для Gmail — smtp.gmail.com .

SMTP Port — порт SMTP-сервера, зависит от типа шифрования (Encryption). Для Яндекс Почты и Gmail используйте порт 465 .

Encryption — тип шифрования. Для Яндекс почты и Gmail необходимо установить «Use SSL encryption».

Authentication — требуется ли выполнять авторизацию на почтовом сервере. Устанавливаем «Yes: Use SMTP authentication».

Username — логин от почты. Как правило, полный адрес почтового ящика, должен совпадать со значением, указанным в поле From Email.

Password — пароль от почтового ящика.

Сохранив настройки, можно отправить тестовое письмо. Для этого введите адрес своего ящика и нажмите кнопку «Send Test». На указанный адрес будет отправлено небольшое письмо, а на экране появится служебная информация с результатами. Проверьте, пришло ли письмо на указанный адрес? Если нет, то что-то настроено неправильно и WordPress не сможет отправлять письма.

С помощью полученного тестового письма можно проверить корректно ли настроены DKIM и SPF. Для этого откройте исходный код письма. В Gmail это называется «Show Original». В Яндекс Почте «Свойства письма».

Просмотр заголовков сообщения в Gmail

В заголовках письма должна содержаться строка «Authentication-Results». Если DKIM и SPF настроены правильно, то вы увидите spf=pass и dkim=pass .

Яндекс почта показывает зеленую галочку рядом с письмом, если DKIM-подпись верна.

” data-medium-file=”https://wpmag.ru/wp-content/uploads/sites/13/2015/03/yandex-mail-dkim-check-300×159.png” data-large-file=”https://wpmag.ru/wp-content/uploads/sites/13/2015/03/yandex-mail-dkim-check.png” src=”https://wpmag-22.cdn.pjtsu.com/wp-content/uploads/sites/13/2015/03/yandex-mail-dkim-check.png?w=780″ alt=”Проверка цифровой подписи” w />

Проверка цифровой подписи

Полезные материалы и заключение

Отправление писем через SMTP-сервер более надежный и правильный способ доставлять письма. Чтобы использовать SMTP не обязательно разбираться с настройкой и администрированием почтовых серверов. Сервисы Яндекса и Google хорошо справляются с поставленной задачей и для небольшого проекта это то, что надо.

Настройка DKIM и SPF — тема для отдельной статьи. Руководства по настройке, как правило, можно найти в справочных разделах почтовых сервисов или узнать у службы поддержки хостинг-провайдера.

В популярной системе управления хостингом cPanel настройки почты вынесены в раздел «Почта». На вкладке «Проверка подлинности электронной почты» можно управлять настройками DKIM и SPF.

  • Синтакс SPF-записей на официальном сайте.
  • Настройка DKIM-подписей и SPF-записей в Google Apps.
  • SPF для ПДД. DKIM-ключ для ПДД можно получить на странице настроек в Яндексе.

Если в ходе настройки и прочтения статьи у вас возникли вопросы, пожалуйста, напишите комментарий и мы постараемся помочь. Также вы можете поделиться своими историями о том, с какими проблемами сталкивались при отправке писем с сайта.

Отправляем всю почту из WordPress через SMTP-сервер с помощью плагина Configure SMTP

Я уже как-то писал о том как минуя серверный sendmail отправлять почту через SMTP-сервер в WordPress. На днях, в очередной раз столкнувшись с адскими серверными лимитами виртуального хостинга Ру-центра, снова оказался в поисках обходных путей.

На сей раз шаблон по ряду причин оказался не совсем готов к работе с WP Mail SMTP о котором шла речь ранее. Поэтому, я решил пойти иным путем и попробовать рекомендуемый многими плагин Configure SMTP, который по-сути решает аналогичную задачу — отправляет всю почту из WordPress через внешний или внутренний SMTP-сервер.

Я не знаю существует ли русская локализация этого плагина, ее поисками я не занимался, т.к. не вижу острой необходимости. Внешне данный плагин никак себя не проявляет, в настройки сводятся к самому минимуму и выглядят следующим образом. Картинка кликабельна.

Как видно на скрине — ничего сложно нет. Я думаю, на английском плагин будет настроить даже проще. Ну, а кому сложно, я кратко пробегусь по всем пунктам.

  • Send e-mail via Gmail? Если вы хотите использовать SMTP-сервер Гугла, ставьте галочку, и все настройки пропишутся автоматически. Без логина и пароля, разумеется.
  • SMTP host. Собственно, адрес SMTP-сервера. Например, в Ру-центре он mail.nic.ru, в Яндексе — smtp.yandex.ru. Адрес SMTP-сервера вы должны выяснить непосредственно у своего почтового сервиса.
  • SMTP port. Порт SMTP-сервера, как правило, указывается вместе с его адресом. Обычно это 25, 587, 465, 475 или 2525-й порт.
  • Secure connection prefix. Метод подключения аналогично нужно выяснить у своего почтового сервиса. В Ру-центре, например, нет никакой безопасности, поэтому данное поле оставляем пустым. В Google ставим SSL.
  • Use SMTPAuth? Нужно поставить галочку, если ваш SMTP-сервер требует авторизацию. Она нужна практически во всех почтовых сервисах.
  • SMTP username/SMTP password. Я думаю это понятно всем — логин и пароль доступа к SMTP-серверу.
  • Wordwrap length. Установка переноса слов. Понятия не имею кому это нужно.
  • Enable debugging? Включаем или выключаем дебаггер. Обычно нужно на этапе на разработки для отлова багов.
  • Sender e-mail/Sender name. Понятно и без перевода — это имя и адрес, которые будут фигурировать в качестве отправителя письма.

После того как все настройки введены, я настоятельно рекомендую вам протестировать работу плагина, нажав на кнопку «Send test e-mail». Если все сделано верно — вам придет письмо. Если письма нет — ищите ошибку в настройках. Плагин полностью рабочий и протестирован мною на WordPress 3.7.1 и локальном SMTP-сервере Ру-центра.

Подпишитесь на мой телеграм и первыми получайте новые материалы, в том числе которых нет на сайте.

200 бесплатных наборов кистей для Фотошопа
611

Как в Фотошопе сменить русский язык на английский
244

Как быстро наполнить сайт на WordPress с помощью плагина WP All Import
204

5 лучших книг по Вордпресс на русском языке
184

Как быстро удалить все исходящие заявки в друзья во Вконтакте
170

25 лучших шаблонов для создания интернет-магазина на OpenCart
141

Установка временнОй зоны в PHP
136

Как открыть *.CDR в Adobe Illustrator
128

Как запретить генерацию карт кода css.map
118

Как отправить большое видео в Ватсап
115

10 рекомендуемых книг-бестселлеров по PHP
113

20 лучших шаблонов Вордпресс для сферы услуг
113

Как импортировать большую базу данных MySQL в обход ограничений phpMyAdmin
111

Как использовать Media Query в JavaScript
108

Как скачать приватное видео из фейсбука
87

Чёрная Пятница 2019: Покупаем Вордпресс шаблон со скидкой
78

20 лучших Вордпресс шаблонов для образовательных сайтов
71

Как включить мультисайт и создать сеть сайтов на Вордпресс
70

Топ 10 лендингов для Вордпресс, заточенных на продажи
70

Как разрешить загрузку SVG и других форматов файлов в Вордпресс?
68

Практикующий веб-разработчик, специализируюсь на платформе Вордпресс.

Лёгкий SMTP плагин для WordPress – настройка и использование

Доброго времени суток!

Если вам надоело сталкиваться с ситуацией, что отправленные письма с вашего сайта под управлением WordPress попадают в спам или вовсе не доходят, то в конечном итоге вы неминуемо придёте к необходимости использования внешнего SMTP сервера, к примеру, бесплатного Яндекс ПДД (Почта Для Домена).

Подключив ваш сайт к Яндекс ПДД или иному серверу отправки почты, дело останется за малым – настроить ваш сайт таким образом, чтобы все письма отправлялись исключительно через SMTP. Давайте посмотрим, как это просто сделать в WordPress.

Настраиваем отправку всех писем с сайта под управлением WordPress через указанный SMTP

Для этого мы воспользуемся весьма лёгким и крайне простым плагином, который выполняет основную задачу – заставляет все письма отправляться не через стандартный PHPMailer, а указанный SMTP.

Данный Вордпресс плагин называется Easy WP SMTP – он находится в официальном репозитории плагинов на WordPress и заслуженно является самым лёгким (его размер порядка 78 килобайт) и весьма популярным. Более 200 тысяч пользователей выбрали Easy WP SMTP.

Не последнюю роль в популяризации данного плагина сыграла ситуация, когда его конкурент в лице WP Mail SMTP был выкуплен некой компанией, которого в итоге из компактного плагина сделала монстра с не нужным 98% пользователям дополнительным функционалом и уже по традиции напичкала его рекламой и «выгодными» предложениями.

Вернёмся к плагину Easy WP SMTP. Установив его стандартным способом через консоль WordPress, зайдите в его настройки. Это делается через меню консоли Настройки -> Easy WP SMTP

Там имеется несколько вкладок:

  • SMTP Settings – здесь указываются настройки SMTP сервера почты
  • Additional Settings – опции для разработчиков, так ничего менять не надо
  • Test Email – отправка письма, дабы протестировать корректность настройки SMTP

Нас интересует вкладка с настройками. На приведённом изображении приведены типовые настройки, что указываются для SMTP сервера Яндекс ПДД.

Фактически всё весьма интуитивно, вопросы может вызвать лишь опция Force From Name Replacement – если стоит галочка, то в приходящих письмах в поле Отправитель будет указан всегда чуть выше вписанный текст. Если же галочки нет и сообщение, к примеру, написано из контактной формы, то в поле Отправитель указывается Имя, что было указано в контактной форме при написании сообщения.

На этом всё. Желаю удачи в подключении вашего сайта к Яндекс ПДД или аналогичного SMTP сервера и настройке оправки писем через него с вашего WordPress сайта.

Плагин Configure SMTP — отправка писем в WordPress

И так давайте подробно рассмотрим работу плагина для настройки SMTP рассылки в WordPress:

Configure SMTP

Плагин Configure SMTP используется для настройки SMTP рассылки в WordPress, в том числе поддержки отправки электронной почты через SSL/TLS (например, Gmail). Практически заставляет WordPress отправлять почту не через php-функцию mail() и не через sendmail хостингового сервера, а через smtp какого-либо другого сервера.

Для начала работы следует скачать плагин с авторской площадки Configure SMTP. Затем по накатанной, установить плагин к себе на блог в папку с плагинами . wp-content/plugins, активировать его через «меню администратора Плагины» в WordPress и перейти к не хитрым настройкам, через админ панель SMTP, которая появится в админке после активации.
Настроек плагин содержит не очень много и вы без труда сможете со всем разобраться
Теперь давайте разберем по пунктам, что да как настраивать.

Send e-mail via GMail ? — Если желаете использовать службу Gmail для отправки почты, отмечаете галочкой и параметры Gmail выставятся автоматом, вам останется только ввести свое имя пользователя и пароль. В случае же использования другого сервера, прописываем параметры smtp своего почтового сервера и соответственно отмечать первый пункт не надо.

SMTP host — По умолчанию стоит «localhost» , если у вас не работает следовательно прописываете свой, например для Yandex — почты это будет smtp.yandex.ru

SMTP port — Номер порта, как правило это 465

Secure connection prefix — Выбор префикса для безопасных соединений SMTP через SSL или TLS

Use SMTPAuth? — Если Аутентификация установлена то необходимо предоставить имя пользователя SMTP и пароль, что и следует сделать в следующих пунктах.

SMTP username — Имя пользователя SMTP ( ваш почтовый ящик )

SMTP password — Просто пароль к вашей почте и все.

Wordwrap length — Задаете, если уж больно приспичит, число символов сообщения при переносе слов.

Следующие два пункта можно оставить как есть, тогда будут использованы настройки по умолчанию или же прописать свои данные:

Sender e-mail — Наборы адресов электронной почты для всех исходящих сообщений. Оставьте пустым, чтобы использовать по умолчанию WordPress.

Sender name — Имя или список имен, от кого будут отправлены сообщения. Оставьте пустым, чтобы использовать по умолчанию WordPress.

Все, больше никаких настроек у плагина нет, он полностью готов к работе, осталось только сохранить все изменения, нажав на кнопку «Save Changes»
В плагине присутствует очень полезная фишка, сразу после настройки, вам предоставляется возможность протестировать отправку электронной почты и удостовериться в правильности настроек вашего блога на работу с почтой. Для этого, в самом низу панели управления плагином, нажатием на кнопку «Send test e-mail» отправляется тестовое сообщение на ваш e-mail.
Проверяете почтовый ящик и любуетесь доставленной корреспонденцией в полном объеме.

Читайте другие интересные статьи

Понравилась статья, расскажи о ней друзьям, нажми кнопку!

WordPress не отправляет почту — Решено

Заметил что перестали приходить письма от WordPress блога.
Решил разобраться в чем же дело.

И то что я увидел меня немного расстроило.

Ранее я всегда считал что WordPress разрабатывает команда профессионалов, периодически выходят разные обновления, после установки которых рассказывается как же много багов найдено и пофиксено.

Однако судя по проблеме с отправкой почты из Вордпресса этот баг старый и корректно устранить разработчики WordPress не хотят, возможно просто не обращают на него внимания (и так сойдет, так как проблему частично решают плагины).

Суть проблемы проста — если у вас в настройках установлено отправлять на почту новые комментарии (например на модерацию), то WordPress пытается отправить письмо от почты wordpress@вашдомен — это действие получается не на всех хостингах. В моем случае apache писал в лог ошибку, вот ее часть

PHP Fatal error: Uncaught exception ‘phpmailerException’ with message ‘Invalid address: wordpress@nemcd.com’ in /site/www/wp-includes/class-phpmailer.php:946nStack trace:n#0 /site/www/wp-includes/pluggable.php(352): PHPMailer->setFrom(‘wordpress@nemcd. ‘, ‘WordPress’)n#1

Т.е. что-то сообщало что почта wordpress@вашдомен неправильная, ее как бы нет, поэтому ошибка и в таком духе. Естественно в админке этой ошибки нигде видно не было и если не искать, то и не заметишь что что-то не так.

Я нашел три решения проблемы с не отправкой почты из WordPress, одно из них мне помогло.

Решения
1. Самое простое — нужно создать на хостинге почту вида wordpress@вашдомен, некоторым такое помогает, это решение в несколько кликов, но у него есть небольшие недостатки. Расскажу подробнее.

Сейчас почтовые гиганты (например Google с GMail, MailRU, Яндекс) применяют различные способы борьбы со спамом, например SPF и DKIM. И с этими технологиями вам нужно разобраться и правильно настроить, чтобы письма от вашего блога быстро и четко доставлялись, не попадали в спам да и вообще чтобы не пропадали в никуда.

Чтобы избежать этого всего головняка, проще и возможно правильнее завести отдельный почтовый ящик для блога и отправлять письма используя его.

Плавно подходим к другим вариантам — отправка писем через сторонний SMTP сервер (на примере smtp.gmail.com)


Добавлено: 13.11.2016
Жаль сразу не дописал статью, сейчас многие детали уже подзабыл, но главную идею помню как сделал. Постараюсь дописать, возможно кому-то поможет

2. Правка исходного кода сайта.

Люди добавляют в PHPMailer (wp-includes/class-[phpmailer|smtp|pop].php) поддержку SSL/TLS соединений и прописывают туда данный почты, например, GMail

Я пробовал, у меня не получилось, да и этот метод не очень, ведь при обновлении версии WordPress файл может перезаписаться и придется делать изменения снова.

3. Установка и настройка специального плагина для отправки почты.

Таких плагинов много, я попробовал штуки 4, но корректно заработал только один!

Я уже было потерял веру, надоело пробовать, настраивать плагины, читать описания и получать одно и тоже, однако я не сдался и нашел работающий способ

Точно не помню названия плагинов с которыми не получилось, но это были топовые плагины из рейтинга и из обзоров. Кстати там были комментарии от других пользователей, что не получается отправка, возможно плагины не работали с новой версией Вордпресса.

Я даже создавал в почте GMail API с доступом, но тоже все было напрасно, оказалось можно сделать проще.

SMTP: Failed to connect socket: Unable to find the socket transport “ssl”

Решаем проблему — при отправке почты WordPress выдает ошибку и письма не доходят.

Мне помог плагин XPertMailer.

Самое интересное, что плагин старинный, версия 0.1beta от 2007 года, но он реально работает! В отличии от многих навороченных плагинов, которые я пробовал.

Вы можете подумать, что я не смог правильно настроить другие плагины, очень вряд ли, так как там нужны были базовые настройки почты — smtp сервер, порт, логин, пароль к почте, ничего хитрого эти параметры у меня есть и вводил я их правильно и не один раз.

С плагином XPertMailer у меня отправка почты получилась с первого раза.

Пришлось немного повозиться с исправлением кодировки, однако все быстро решилось.

Устанавливаем XPertMailer обычным способом — Плагины — Добавить новый — Поиск плагинов — XPertMailer.

Настраиваем и активируем почтовый плагин.

Мой пример для почты Gmail

Можно попробовать отправить себе тестовое письмо.

Немного позже вы столкнетесь, с тем, что письма приходят с неправильной кодировкой русских букв, т.е. в письме кракозябра.

Я начал читать хелпы и мануалы, чтобы найти как исправить кракозябру.

Я заменил одну строку в XPM4PHP5MIME5.php и русский тест в теле письма стал приходить правильно.

const MCHARSET = ‘utf-8’;

Исправляем xpertmailer-advanced-php-mail-engine bad codepage

После этих не сложных действий блог обрел былую способность рассылать письма с комментариями. Ура!

Ссылка на основную публикацию