Что делать если не работает форма обратной связи? Настройка почты на WordPress. WP Mail SMTP от WPForms Отправка писем wordpress
Всем привет!
Плагин достаточно прост в управлении и настройке. Впрочем, и с ним возможны неполадки. Причин тому, что не работает Contact form 7 на WordPress может быть несколько. Приведем наиболее распространенные из них.
Почему не работает контактная форма WordPress?
Неподходящая тема или ошибка в теме
Частая проблема, из-за которой не работает контактная форма WordPress – неподходящая тема или же ошибки в Javascript-е темы. Для того чтобы понять, по этой ли причине у вас не работает форма обратной связи WordPress, нужно зайти в админку и выбрать вкладку «Темы». Там поменять шаблон на «тему по умолчанию» и после этого проверить работу отправки сообщений и внешний вид контактной формы. Если после этого сообщения отправляются, и почта работает – значит, нужно править ошибки в выбранной вами теме, так как из-за нее и не отправляется сообщение.
Несоответствие плагинов с Contact Form 7
Плагин для WordPress Contact Form 7 может не работать из-за того, что другие плагины на вашем сайте конфликтуют с ним, и в результате Вордпресс не отправляет почту. Чтобы исключить данную проблему – поочередно отключаем остальные плагины один за одним, каждый раз обновляя страницу обратной связи. Если после отключения одного из плагинов, контактная форма заработала, значит вы нашли корень проблемы. Ищите, чем заменить конфликтующий плагин. Если же вы отключили все плагины, а Contact Form 7 так и не работает, ищем ошибку дальше.
Письма попадают в спам
Возможен вариант, что письма попадают в спам. Если писем ежедневно приходит достаточно большое количество, спам-фильтр может начать их блокировать. Чтобы избежать этого, нужно зайти в настройки почты, которую вы используете для Вордпресс-блога, и отметить важные письма как не спам (если вы все-таки нашли их в папке со спамом). После того, почтовый сервис должен впредь их распознавать как не спамные.
Проверить работу обратной связи без плагина
Вы можете протестировать отправку почты на своем блоге без участия плагина. Вот статья о том, как это сделать – ». Это верный способ узнать, где спряталась ошибка – в самом плагине Contact Form, либо же она возникает непосредственно при отправке почты в WordPress.
Проблема вызвана хостингом
Чаще всего это выглядит так: сообщение отправляется, но не приходит на почту.
Бывает, что по какой-то причине (например, в случае атаки на сервер или же массовой рассылки писем) хостинг перестал отправлять письма. В этом случае настройка отправки почты на WordPress без участия вашего провайдера не обойдется. Необходимо связаться с технической поддержкой вашего хостинг-провайдера и выяснить причины проблемы. В данном случае вы не будете получать письма не только из контактной формы WordPress, но и сообщения о новых комментариях на блоге.
Но чаще всего подобные проблемы возникают при . В данном случае вам нужно обратить внимание на настройку почты на WordPress.
Плагин WP Mail SMTP
В Вордпресс есть встроенная функция отправки писем PHP Mail, но не на всех хостингах она работает корректно. Потому, если Вордпресс не отправляет почту, потребуется установить плагин WP Mail SMTP. Он активизирует возможность подключаться к SMTP-серверу. При этом ваш хостинг-провайдер должен допускать возможность подключения к внешним SMTP-серверам, а объем рассылок в день не должен превышать 2000 писем (ограничения Гугл и Яндекса).
Если данные условия соблюдены, переходим к WP Mail SMTP.
После того, как плагин установлен, потребуется создать почтовый ящик на Gmail, либо на Яндексе. Почту для домена на Яндексе можно создать перейдя по ссылке — .
Если вы создаете почтовый ящик блога на стороннем ресурсе, а не на хостинге, у вас появится ряд преимуществ. Вы не будете зависеть от стабильности работы хостинга, вам не придется доплачивать за увеличение объемов почты. Кроме того, работать в привычном интерфейсе почтового сервиса удобнее.
Ниже приведен образец настройки WP Mail SMTP на WordPress на примере e-mail на Yandex.ru.
Где SMTP Port – это SMTP порт сервера, на котором размещен почтовый ящик (в моем примере – SMTP порт Яндекс-почты).
Вместо вы вписываете название почтового ящика, который создали для вашего домена (любое имя @ название домена).
Такой же почтовый адрес вам необходимо указать в общих параметрах блога («Параметры» — «Общие настройки»).
Именно сюда вам должно прийти тестовое письмо, если все настроено верно.
Вот видео-инструкция о том, как настроить WP Mail SMTP:
Еще один плагин почты для WordPress, который похожим образом решает вопросы отправки-получения писем — Configure SMTP. Он так же достаточно прост в установке и настройке. Выбирайте тот плагин, который вам больше по душе.
Если вы все же не хотите создавать почтовый ящик на Яндексе или Гмейле, можно попробовать решить проблему с отправкой почты на Вордпресс и непосредственно на хостинге. Для этого вам также потребуется создать почтовый ящик, но на хостинге. При этом он должен быть такого вида: (где после собачки – название вашего домена).
Дело в том, что WordPress в строке отправителя указывает такой адрес, а некоторые хостинги не отправляют почту, если такого е-мэйла не существует фактически.
По такому же принципу можно устранить некоторые неполадки, если не работает Contact Form 7 на WordPress. В поле From при настройке плагина на вкладке «Письмо» впишите подобный почтовый адрес с именем домена.
Надеюсь, приведенные советы помогут вам исправить неполадки при отправке почты в WordPress, а также решить проблемы с работой плагина Contact Form.
Стандартная отправка почты в WordPress осуществляется с помощью почтового сервера хостинг провайдера с помощью функции mail. Однако не все хостинг провайдеры включают использование этой функции.
К счастью, есть выход из этой ситуации – использование стороннего SMTP сервера.
Для того чтобы использование стороннего SMTP сервера стало возможным нужно установить соответствующий плагин.
В статьях в интернете обычно советуют использовать Configure SMTP (есть даже подробные инструкции по его использованию), но, на момент написания данной статьи, этот плагин уже 4 года не обновлялся и, следовательно, не тестировался на последней версии WordPress. Поэтому, если нет желания рисковать, тестируя плагин самостоятельно, лучше поискать альтернативу. Например, плагин Postman SMTP Mailer/Email Log
Устанавливается этот плагин самым обычным способом либо через админпанель WordPress либо путём скачивания zip-архива и его последующей распаковки в директорию wp-content/plugins.
После установки плагина появляется удобная панель управления.
Она позволяет:
- Выполнить настройку плагина, в частности SMTP,
- Отправить тестовое письмо по email (Send a Test Email);
- Сбросить настройки плагина («Delete plugin settings»);
- Проверить возможность соединения с заданным при настройке SMTP сервером («Run a Connectivity Test»);
- Получить техническую информацию для диагностики проблем (для специалистов)(«Diagnostic info»);
- Обратиться за поддержкой к разработчикам плагина («Online Support»);
- Просмотреть список отправленных сообщений, если включена соответствующая опция («View the log»).
Одна из особенностей этого плагина, возможность настройки SMTP в режиме мастера (кнопка «Start the Wizard»). Это будет большим плюсом для тех, кто испытывает трудности с настройкой технической части.
На первом шаге нужно ввести email, с которого будет отправляться почта с сайта и имя отправителя.
На следующем шаге необходимо указать имя SMTP сервера, который будет использоваться. Например, smtp.mail.ru (если используете эту почту).
После этого плагин автоматически проверит доступность SMTP сервера.
И если проверка проходит успешно, можно остаётся только ввести имя пользователя и пароль.
Следует отметить, что в режиме мастера, плагин автоматически определяет порт, к которому следует подключиться и тип соединения (защищённое или нет).
Также можно выполнить все настройки вручную. К слову, в ручном режиме доступно больше настроек.
На вкладке Account выполняется настройка SMTP. Помимо тех настроек, что были доступны в режиме мастера, также можно задать порт, тип аутентификации и даже изменить протокол. Однако последнее актуально только для пользователей почтового сервиса Gmail, так как в качестве альтернативы поддерживается только Gmail API.
На вкладке «Message» указывается адрес электронной почты, с которого будут отправляться письма и имя отправителя.
Остальные параметры не обязательны и при отсутствии необходимости их можно не указывать.
Вкладка «Logging» предназначена для настройки списка письма. Можно включить или отключить ведение списка («Enable Logging»), задать максимальное количество эле6ментов списка («Log Entries Limit», по умолчанию 10) и максимальное количество строк в описании технической информации о письме(«Transcript Size», по умолчанию 128).
Список отправленных писем (если включено его ведение)можно посмотреть перейдя по ссылке «View the log» на панели управления плагином.
Вкладка «Advanced» предназначена для настроек TCP соединения («Network Settings», лучше оставить значения по умолчанию), работы с журналом PHP («PHP Log Level», тоже лучше оставить по умолчанию) режима доставки писем («Delivery mode») и режима повышенной конфиденциальности («Stealth mode»).
Про режим доставки необходимо сказать особо. Должно быть обязательно выставлено значение «Log Email and Send». В противном случае письма просто не будут отправляться.
В заключение необходимо отметить один, надеюсь, очевидный нюанс. Какой бы Вы ни выбрали плагин для работы с SMTP, никогда не используйте рабочий email. Лучше потратить всего лишь на всего две минуты времени и завести новую почту специально для этих целей.
Один из основных «компонентов» любого веб-приложения – это возможность посылать почтовые сообщения — е-мейл.
Однако это не означает, что каждое приложение использует свой собственный почтовый клиент. (Хотя люди, конечно, создают свои).
Приложения отправляют письма на электронный ящик, когда пользователь регистрируется, меняет пароль, в системе происходят какие-то изменения и т.д. В общем, когда происходит что-то такое, о чем владелец сайта хочет уведомить посетителей.
Понятие E-mail
Перед тем, как мы углубимся в то, что WordPress API может предложить для отсылки писем, редактирования их настроек и подобных вещей, важно знать пару важных моментов об e-mail.
А именно, важно понять, как работают компоненты, которые создают само письмо, а это нечто большее, чем только адрес, тема и содержание. Существуют некоторые технические нюансы, которые следует уяснить, прежде чем приступать к созданию собственных писем.
«Шапка» электронного письма содержит минимум информации: от кого и кому письмо было отправлено. Также можно встретить и другие сведения. Например, время, когда письмо было послано или получено.
Когда мы работаем с программой WordPress, отправитель письма назначается по умолчанию. Если он не указан, то адрес отправителя принимает вид «wordpress@domain . com »
Если вы хотите установить другой адрес «ответа», например «[email protected] », то такая возможность доступна в настройках.
Лучше всего работать с оглавлениями, используя массивы.
Тип MIME
Когда придет время указывать формат отправки письма, вы, вероятно, увидите два альтернативных формата:
- Plain text
Вы привыкли видеть HTML в большинстве современных e-mail клиентов, однако, если у вас упрощенный клиент, или он настроен на отображение только обычного текста, или вы читаете письмо на дисплее старого телефона, то содержимое будет отображаться в Plain text.
Программа WordPress соответственно позволяет отправлять письма как в формате HTML, так и в формате Plain Text.
После того, как мы взглянем на пример, где показано, как программно отправлять электронные письма, нами будет тщательно изучено все происходящее. Вкратце, существует определенный «хук», который значительно все упрощает, однако мы не увидим его в действии, пока не разберемся со всеми необходимыми фрагментами письма.
Вложения (Attachments)
Как известно, вложением является любой файл, прикрепленный к основному письму, отправленный получателю вместе с текстом.
Дело в том, что существуют некоторые нормы и правила отсылки электронного письма с вложением, и они не обязательно предусмотрены в приложении. Вместо этого, сервера, почтовые клиенты устанавливают свои ограничения на определенные виды входящих файлов.
Например:
- Некоторые клиенты не допускают отправку/получение файлов формата ZIP и EXE (т.е. архивы и исполнительные файлы)
- Большинство сервисов имеют лимит по размеру прикрепленного файла.
- Определенные типы писем могут быть помечены как спам автоматически (основываясь на вложениях и содержимом тексте)
Разумеется, правила изменить мы не можем. Но стоит знать ограничения тех, кому мы отправляем письма, и оставаться в установленных рамках. Но не стоит волноваться! Отправить е-мейл в соответствии с данными условиями и заданными целями в программе WordPress не составит труда!
Возможно, вам и не потребуются вложения, но и не исключено, что вы захотите прикрепить к письму один или даже несколько дополнительных файлов. В программе это можно реализовать как с помощью строки, так и с помощью массива. Однако мы не будем рассматривать этот случай прямо сейчас, но мы обязательно затронем его, когда будем разбираться с примером.
«Кому», «Тема», «Сообщение»
В большинстве случаев e-mail состоит из трех основных пунктов: «кому» (адрес электронной почты получателя), «Тема» и «Сообщение» (основной текст).
В WordPress достаточно легко работать с данной информацией. Достаточно всего лишь обеспечить каждую «графу» своей строчкой.
Разумеется, если вы хотите отправить сразу несколько писем, то можно как повторять отсылку е-мейла желаемое количество раз, отправляя по одному письму каждому пользователю, так и использовать массив из адресов получателей в WordPress Mail API , тогда письмо отправиться всем, кто был включен в этот массив.
И запомните! Если вы хотите изменить стандартный reply - to (ответный) адрес на свой, загляните в «Оглавление».
Использование WordPress Email API
Мы рассмотрели все основные моменты и готовы приступить к основной части статьи, а то есть, к изучению WordPress Email API.
Если разобраться, весь функционал по этой теме сосредоточен в функции wp_mail, однако существуют еще некоторые «хуки», о которых нам тоже следует знать, если мы хотим использовать все преимущества системы.
Основные «Хуки»
- wp _ mail _ content _ type позволяет установить тип MIME исходящего письма
- wp _ mail _ from – это фильтр, с помощью которого можно установить электронный адрес отправителя, не прибегая к массиву $headers .
- wp _ mail _ from _ name – фильтр с аналогичной функцией, но для указания имени отправителя (также без использования массива $headers.)
- wp _ login – Хук, который мы будем использовать для демонстрации, посылая е-мейл человеку, когда тот авторизируется в приборной панели WordPress.
Для полноты картины, я поделюсь своим кодом ниже, и вы сможете увидеть все, что мы сейчас разобрали, в действии, тем самым изучить, как это все работает.
";
$message .= "Your account has been created. Your login information is below:";
$message .= "
";
$message .= "
- ";
$message .= "
- Username: " . $input["email-address"] . " "; $message .= "
- Password: " . $password . " "; $message .= "
"; $message .= "You can login to the application here."; add_filter("wp_mail_content_type", create_function("", "return "text/html";")); add_filter("wp_mail_from", "acme_mail_from"); add_filter("wp_mail_from_name", "acme_mail_from_name"); wp_mail($input["email-address"], "Your Acme Account Has Been Created!", $message, array()); } function acme_mail_from($email) { // NOTE: replace with @. This was causing problems with the syntax highlighter. return "donotreplyacme.com"; } function acme_mail_from_name($name) { return "The Acme Company"; }
< ? php function acme_email_individual ($ input ) { * Note: assume that $input has keys for "email-address". // Generate the password $ password = wp_generate_password (12 , false ) ; // Email the user that they"re profile was created $
message
.
=
" $ message . = "Your account has been created. Your login information is below:" ; $
message
.
=
" $ message . = "
$ message . = " $ message . = " $ message . = " $
message
.
=
" add_filter ("wp_mail_content_type" , create_function ("" , "return "text/html";" ) ) ; add_filter ("wp_mail_from" , "acme_mail_from" ) ; |
// Generate the password = Генерируем пароль
// Email the user that they"re profile was created = Отправляем письмо пользователю, аккаунт которого был создан
// NOTE: replace with @. This was causing problems with the syntax highlighter = Обратите внимание! Надо замените [ at ] на «@». (Это бы вызывало проблемы с выделением синтаксиса)
Разбор кода должен все прояснить. После написания основной информации мы, используя плюсы предусмотренных в программе «хуков», создаем «strings» (строки) как аргументы и, в конце концов, вызываем саму функцию wp_mail .
Однако заметьте, что мы допускаем использование пустых массивов для некоторых аргументов $headers . А все потому, что у нас есть пользовательский фильтр для указания «From Name »(Имени отправителя) и “From Address ”(Адреса отправителя)
Этот метод не является однозначно лучше, чем альтернативный. Однако теперь мы видим, что существует несколько способов осуществить поставленную задачу.
Добрый день дорогие друзья! Возникали ли у вас проблемы отправкой email писем через сайт на WordPress? Есть один способ решить ее, используя сервер Gmail SMTP и в этой статье мы расскажем как это легко сделать.
Почему и когда вам следует использовать Gmail SMTP сервер для сообщений WordPress
Ваш вордпресс сайт отправляет на почту уведомления всякий раз когда происходит регистрация нового пользователя, либо сбрасывается пароль, автоматическое обновление и оповещения с ваших контактных форм. По умолчанию WordPress использует функции PHP при отправке уведомлений на почту. Однако иногда эта функция дает сбой в силу ряда причин.
Большинство хостингов, предлагающих установку нашей CMS ограничивают использование данной функции для и лишней нагрузки на сервер.
СПАМ фильтры у некоторых почтовых сервисов настроены таким образом, чтобы проверять с каких аутентичных почтовых серверов отправляются письма. По умолчанию WordPress электронные письма не проходят данную проверку, а в некоторых случаях отправляют все это в СПАМ папку.
SMTP (Simple Mail Transfer Protocol) является отраслевым стандартом для отправки электронной почты. В отличие от функции PHP, SMTP использует надлежащую проверку подлинности электронной почты, который увеличивает доставляемость писем.
Сервис Gmail предоставляет SMTP технологию, которую вы можете использовать для отправки email с вашего WordPress сайта. Если вы хотите отправлять уведомления на свой почтовый ящик о зарегистрированный новых пользователях, то использование технологии SMTP будет лучшей опцией для вас. Однако если планируете отправление новостных рассылок с помощью WordPress, то тогда вам следует использовать сервисы по массовым отправкам писем, таких как MailGun или SendGrid.
Бесплатный или платный SMTP сервис для WordPress
Вы можете использовать в работе и бесплатную версию отправки писем по протоколу SMTP. Однако, для лучшей доставляемости мы рекомендуем пользоваться платными версиями Google Apps for Work. Благодаря этому сервису вы получите свой собственный брендированный адрес почты, вида yourname @ yoursite . com
Приложение Google затребует, чтобы добавили MX записи к вашему домену, что означает, что ваши сообщения будут 100% проходить проверку, т.е ваш канал отправки писем будет достоверным и значит все письма будут доставляться в папку Входящие, а не СПАМ.
Как отправить электронную почту с помощью WordPress Gmail SMTP-сервера
Если вы твердо решили пользоваться приложением Google Apps for Work, тогда первым делом вам нужно установить ваш для работы этим сервисом. Мы подготовили пошаговое руководство как создать профессиональный email адрес почты с данным сервисом.
Остальные инструкции одинаковы не важно используете ли вы платный или бесплатный вариант учетной записи Gmail.
Есть два способа, как подключить ваш WordPress сайт к серверам Gmail SMTP. Первый метод задействует Oauth Аутентификацию. Это более безопасный метод отправки email писем, используя Gmail сервера.
Второй метод использует менее защищенные приложения, поэтому он не рекомендуется, но мы его здесь продемонстрируем. Он заключается в вводе пароля к аккаунту Gmail, который виден всем пользователям с уровнем администратора. Его следует использовать только тогда, когда не сможете воспользоваться первым методом.
Метод 1: Настройка Gmail SMTP с использованием OAuth
Первое, что вам нужно сделать на этом шаге это установить и активировать плагин Gmail SMTP для WordPress. После активации идем в раздел Настройки (Setting)-> Gmail SMTP для конфигурирования некоторых опций.
Вы увидите уведомление, которые требуются от вас, чтобы создать веб приложение для вашего Gmail аккаунта и сгенерировать API ключи. Эти API ключи будут идентифицировать (определять) ваш сайт, как ресурс, использующий Gmail SMTP сервера.
Создание приложения и генерация API ключа
Эта ссылка приведет вас на страницу для разработчиков Google Developers. Вы должны войти под своими учетными данными в систему, которые вы хотите использовать для отправки email через WordPress сайт. После того, как вы вошли в систему, новый проект будет создан для вас с уже включенным Gmail API.
Кликайте на кнопку «Go Credentials» (перейти к проверке соответствия). На следующем экране вам будет предложено назвать откуда вы будете вызывать API. Вам нужно выбрать Web Browser (Javascript) из выпадающего списка. В разделе «Какие данные будете использовать для доступа» нужно выбрать пользовательские данные (User Data).
После этого нажмите на синюю кнопку «What credentials do I need?» чтобы продолжить процесс.
Мастер настройки Gmail теперь попросит вас предоставить URL адрес сайта, который будет использовать данный API. Под вкладкой «Authorized Javascript Origins» вам необходимо ввести адрес вашего сайта.
Под разделом «Authorized redirect URLs» вам нужно вставить адрес, показанный на странице настроек плагина Gmail SMTP в панели управления.
Затем нажмите на кнопку «Create client ID» (Создать идентификатор клиента) для продолжения.
Теперь вы находитесь на странице настроек OAuth. Просто введите ваш gmail адрес и имя вашего приложения, который используется для доступа в Gmail аккаунт. В вашем случае это будет ваше собственное имя сайта.
После того, как все сделано, нажимаете на кнопку Continue (Продолжить). Поздравляю вы успешно установили Gmail API с поддержкой OAuth авторизации. Вам нужно нажать на кнопку Готово (Done).
Сейчас вы увидите ваш клиентский идентификатор (приложения), которые вы создали для доступа к вашему Gmail API.
Кликните на имя вашего сайта или клиентского проекта для продолжения.
На следующем экране вы увидите клиентский ID и секретный ключ.
Просто скопируйте ключи и вставьте их в ваш Gmail SMTP плагин в настройках на WordPress сайте.
После этого заполните оставшиеся поля в настройках плагина. Вам нужно будет добавить запись email адрес почты Google в поле OAuth Email Address и в From Email Address, т.е сделать это два раза. Вы можете ввести свое имя или имя вашего сайта в поле «От имени» (From Name). Далее выбираете тип шифрования TLS и прописываете в качестве SMTP порта значение 587 и, наконец, нажимаете на кнопку сохранить изменения.
После обновления страницы настроек плагина, вам нужно спуститься в самый низ и нажать на кнопку «Grant Permission» (Предоставить разрешение).
Это приведет вас к аккаунту Google, где вам будет предложено дать разрешение вашему сайту для доступа к учетной записи Gmail. Нажмите на кнопку Allow (позволить), чтобы продолжить.
Вы будете перенаправлены обратно к настройкам плагина Gmail SMTP на вашем WordPress сайте. Обратите внимание, что теперь значок SMTP статуса будет гореть зеленым цветом.
На этом все. Вы успешно настроили отправку email писем через сервер Gmail SMTP. Теперь вы можете нажать на вкладку электронной почты и отправить самому себе письмо для теста.
Метод 2: Настройка Gmail SMTP с включенным менее безопасным приложением
Этот метод применим для менее защищенных приложений Gmail. Его использовать не рекомендуется, но если по каким-то причинам первым способом установить связь с SMTP не получается, то воспользуйтесь им.
Поскольку безопасность и СПАМ являются главной проблемой для большинства провайдеров электронной почты, то вполне возможно Google скоро откажется от этого метода. Если вы используете службы Google For Work, то тогда здесь вы можете позволить вашим пользователям управлять своим доступом к менее защищенным приложениям.
Посетите админ панель вашего домена в сервисе Google Apps. Перейдите в раздел Security -> Basic Setting (Безопасность – Основные настройки) и прокрутите скрол вниз до секции менее защищенные приложения.
Кликните на «Go to settings for less secure apps» для продолжения. На следующем экране выберите опцию рядом с «Allow users to manage their access to less secure apps» (Позволить пользователям управлять своим доступом в менее защищенном приложении). Не забудьте кликнуть на кнопку «Сохранить» в правом нижнем углу экрана.
Остальные инструкции одинаковы как для платных так и для бесплатных аккаунтов Gmail.
Просто посетите страницу настроек менее защищенных приложений в вашем Гугл аккаунте и включите данную опцию.
Теперь, когда вы включите менее безопасное приложение для доступа к учетной записи Google, настает время для настройки вашего Вордпресс сайта, чтобы соединиться с сервером SMTP Gmail, используя менее безопасный метод.
Прежде всего, необходимо установить и активировать плагин WP Mail SMTP . После активации переходим в Настройки (Setting) -> Email Page (Страница Email) для конфигурирования плагина.
Здесь вам нужно указать следующее:
- From Email: Введите ваш Gmail адрес почты
- From Name: Введите ваше имя или название вашего сайта
- Mailer: Установите «Send all WordPress emails via SMTP» (Отправлять все письма через SMTP протокол)
- Return Path: Установите данный чек бокс, чтобы использовать Email в качестве обратного адреса
- SMTP Host: smtp.gmail.com
- SMTP Port: 465
- Encryption: использовать SSL шифрование
- Authentication: Да, использовать аутентификацию.
- Username: ваш полный почтовый адрес, например john @ yourdomain . com или john . smith @ gmail . com (меняете на ваш адрес почты)
- Password: ваш пароль от Google аккаунта
Кликните на сохранение изменений, чтобы настройки вступили в силу.
После сохранения настроек прокрутите вниз до конца страницы и вы увидите кнопку «Send a test email» (Отправить тестовое письмо). Введите адрес электронной почты, чтобы убедиться, что все работает корректно.
Вот и все, вы успешно настроили ваш WordPress сайт для отправки email писем через протокол Gmail SMTP.
Устранение неполадок в работе Gmail SMTP
Мы видели ряд вопросов, что Gmail SMTP не работает с некоторыми конфигурациями виртуального хостинга.
Выполните следующие действия, чтобы устранить эти неполадки. Войдите в свой аккаунт хостинга и создайте учетную запись электронной почты, который соответствует адресу почты в Google Apps.
В своем аккаунте cPanel, перейдите к MX записям и измените маршрутизацию MX с автоматической на Remote. Это покажется несколько сложным шагом, ведь у каждого хостера свой пользовательский интерфейс cPanel, но обратите внимание на маленькую ссылку рядом с MX, которая называется Email Routing: Remote Mail Exchanger (Маршрутизация почты удаленного почтового сервера).
После этого войдите на ваш сайт и отправьте тестовое письмо.
Мы надеемся, что статья вам помогла. До новых встреч в следующих полезных выпусках блога!
Отправляет письмо на почту. Похожа на mail() в PHP.
Имя отправителя по умолчанию: WordPress , а email по умолчанию: [email protected] . Их можно переписать изменив заголовок письма на:
From: Example User
Функция использует фильтры wp_mail_from и wp_mail_from_name , которые влияют на адрес email"a и имя отправителя, соответственно, при этом поле From (от кого) собирается заново. Если только wp_mail_from (email) возвращает значение, то имя указываться не будет вообще: (From: [email protected])
Тип письма по умолчанию text/plain , а значит в теле письма нельзя использовать html теги. Изменить тип письма можно через фильтр wp_mail_content_type или указав заголовок: content-type: text/html .
Кодировка по умолчанию соответствует кодировке блога (обычно utf-8). Кодировка устанавливается через фильтр wp_mail_charset .
Для работы этой функции сервер должен работать с SMTP и должен быть установлен smtp_port в php.ini.
Это pluggable функция - т.е. её можно заменить из плагина. Это значит, что она будет работать (подключается) только после подключения всех плагинов, а до этого момента функция еще не определена... Поэтому нельзя вызывать эту и зависящие от неё функции прямо из кода плагина. Их нужно вызывать через хук plugins_loaded или позднее, например хук init .
Замена функции (переопределение) - в плагине можно создать функцию с таким же названием, тогда она заменит текущую функцию.
Хуки из функции
Возвращает
true, если удалось отправить письмо и false, если нет.
true не означает, что письмо дошло до адресата, а означает только то, что функция проделала всю процедуру отправки письма без ошибок.
Использование
wp_mail($to, $subject, $message, $headers, $attachments); $to(строка/массив) (обязательный) email получателя письма. Несколько получателей указываются в массиве или через запятую в строке.По умолчанию: нет $subject(строка) (обязательный) Тема письма (заголовок).
По умолчанию: нет $message(строка) (обязательный) Тело письма (содержание, контент).
По умолчанию: нет $headers(строка/массив)
Заголовки письма, указывающие на его атрибуты. Для продвинутого использования. Может быть:
- from - от кого. Пр. [email protected]
- content-type - text/html , text/plain
- cc - [email protected] - точная копия (carbon copy) - вторичные получатели письма, которым направляется копия. Они видят и знают о наличии друг друга.
- bcc - [email protected] - скрытая точная копия (blind carbon copy) - скрытые получатели письма, чьи адреса не показываются другим получателям.
- reply-to - [email protected]
- и любые другие произвольные параметры.
По умолчанию: ""
$attachments(строка/массив)
Файлы, которые следует прикрепить к письму. Указываем полный путь до файла (название файла включительно). Если нужно прикрепить несколько файлов указываем их названия в массиве или в строке через перенос строки.
По умолчанию: array()
Примеры
#1. Пример отправки письма
Отправим письмо от My Name
На некоторых серверах (хостингах) в поле FROM (в части email) обязательно должен фигурировать домен сайта, иначе, например, яндекс почта не получит письмо. Проверял на хостинге Бегет.
Т.е. в этом случае лучше не указывать From: , а изменить только часть этого поля, только имя, через фильтр:
Add_filter("wp_mail_from_name", function($from_name){ return "Мое имя, а не WordPress"; // тут можно указать свою почту: [email protected] });
// удалим фильтры, которые могут изменять заголовок $headers
// remove_all_filters("wp_mail_from");
// remove_all_filters("wp_mail_from_name");
$attachments = array(WP_CONTENT_DIR . "/uploads/attach.zip");
$headers = "From: My Name
#2. Пример использования массива для указания заголовков письма:
// подразумевается что $to, $subject, $message уже определены... // удалим фильтры, которые могут изменять заголовок $headers // remove_all_filters("wp_mail_from"); // remove_all_filters("wp_mail_from_name"); $headers = array("From: Me Myself#3. Отправим письмо двум пользователям сразу и зададим формат письма html:
$multiple_to_recipients = array("[email protected]", "[email protected]"); add_filter("wp_mail_content_type", "set_html_content_type"); wp_mail($multiple_to_recipients, "The subject", "The HTML message
"); // Сбросим content-type, чтобы избежать возможного конфликта remove_filter("wp_mail_content_type", "set_html_content_type"); function set_html_content_type() { return "text/html"; }#4. Настройка параметров отправки через фильтры
#1 Этот пример показывает как изменить тип письма на html, используя фильтр wp_mail_content_type:
add_filter("wp_mail_content_type", function($content_type){ return "text/html"; }); wp_mail("[email protected]", "The subject", "The HTML message
");