Contact Form 7 – Настраиваем отправку письма, и исправляем ошибки при отправке писем
Contact Form 7 – отличный плагин для отправки форм с сайта. Сегодня поговорим о том как исправить ошибки при отправке сообщений, так же я предоставлю готовый HTML шаблон и настройки для писем CF7
Contact Form 7 очень популярный плагин и проверенный инструмент для создания форм, на данной странице я поделюсь с Вами свои "рецептом" заполнения формы отправки письма (эта область которая находится на странице настройки формы на вкладке "Письмо"). Так же мы рассмотрим возможные причины и их решения в случае если Вы не получаете электронные письма от CF7 или получаете уведомления об ошибках при попытке отправить электронное письмо.
Я часто использую данный шаблон для отправки писем как на своих сайтах, так и на сайтах клиентов. Рекомендую его использовать, так как он максимально комфортен для как конечного клиента, так и для себя любимого :).
Вводим данные в соответствии своему сайту.
Кому:
info@ВАШ_ДОМЕН.COM
От кого:
site@ВАШ_ДОМЕН.COM
Тема:
???? [_site_title] - ФОРМА"КОНТАКТНАЯ ФОРМА"
Дополнительные заголовки:
Дополнительные заголовки оставляем пустыми и не трогаем!
Тело письма: Здесь обращаю Ваше внимание на то что логотип должен быть четко "квадратной формы" для того что бы красиво смотреться в письме. И иметь размеры 150 на 150 пикселей.
<img style="max-width: 150px !important;" src="" data-src="https://ВАШ_ДОМЕН.COM/wp-content/uploads/2018/02/Logo-150x150.png">
<h3>Пользователь заполнил следующие данные:</h3>
<p><b>Имя:</b></p><br> [text-59]
<p><b>E-mail:</b></p><br> <a href="mailto:[Email]">[Email]</a>
<p><b>Телефон:</b></p><br> <a href="tel:[tel-116]">[tel-116]</a>
<p><b>Сообщение:</b></p><br> [textarea-102]
-
Это сообщение отправлено с сайта [_site_title] ([_site_url])
И не забываем отметить "Использовать HTML-формат письма":
Как использовать CSS и свой шрифт в письме Contact From 7?
Код описанный ниже вставляем в "Тело письма" плагина Contact From 7. Соответственно правим код под себя. В целом благодаря данному коду у Вас получится создать очень даже привлекательное письмо, которое не будет выглядеть как "из под топора".
Тело письма:
<!doctype html>
<html>
<head>
<!-- Подключаем шрифт от Google Fonts -->
<link href="http://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet" type="text/css">
<!-- Используем свои свои CSS -->
<style>
@media screen {
@font-face{
font-family:'Open Sans';
font-style:normal;
font-weight:400;
src:local('Open Sans'), local('OpenSans'), url('http://fonts.gstatic.com/s/opensans/v10/cJZKeOuBrn4kERxqtaUH3bO3LdcAZYWl9Si6vvxL-qU.woff') format('woff');
}
}
.Tovar, .Zagolovok{
font-weight:400;
}
</style>
</head>
<body>
<img style="max-width: 150px !important;" src="" data-src="">
<b><h2 class="Tovar">Пользователь выбрал товар:</h2></b>
<h2>[hidden-120]</h2>
<hr>
<h3 class="Zagolovok">Пользователь заполнил следующие данные:</h3>
<p><b>Имя:</b></p>
[text-59]
<p><b>Телефон:</b></p>
<b><a href="tel:[tel-116]">[tel-116]</a></b>
<p><b>Email:</b></p>
[Email] <br><br><br>
-
Это сообщение отправлено с сайта <b>[_site_title]
<br>[_site_url]</b>
</body>
</html>
Вы должны проверить информацию введенную в поля «Кому» или «От кого», потому что в старой версии CF7 этот ввод имеет значение «[ваше имя] <[ваш адрес электронной почты]>». Это неверное значение, так как электронная почта отправителя должна содержать домен текущего сайта, на котором вы установили CF7.
Допустим у меня есть сайт https://mediadoma.com/, на данном сайте при настройке плагина CF7 я ввел в поле «Кому» (я на всех проектах использую Gmail API, как это сделать я подробно описал здесь.):
MyMail@gmail.com
А вот в поле «От кого» я ввел
wordpress@mediadoma.com
Почта может быть поддельной, и это не страшно, здесь главное указать домен своего сайта.
Другие плагины могут вызвать проблемы
Если первое решение не помогает, попробуйте отключить все плагины, кроме CF 7, и протестируйте отправку форм. Если отправка писем все еще не работает, включите обратно отключенные плагины.
Иногда плагины безопасности блокируют отправку писем с веб-сайта.
Свяжитесь с вашим хостинг-провайдером
Иногда хостинг-провайдер отключает функцию, которую использует Contact Form 7 (имя данной php функции mail() ). Напишите сообщение в вашу поддержку и спросите их об этом. Попробуйте решить проблему при помощи службы поддержки хостинга.
JSON REST API был отключен в WordPress
Так как последнее время набрал огромную популярность плагин "Clearfy" пользователи часто начали сталкиваться с тем что при ускорении сайта (при помощи плагина clearfy) CF7 почему-то перестает работать. Это прежде всего связано с отключением "REST API" на странице настроек плагина Clearfy. По этому убедитесь в том что у Вас настройки "REST API" не отключены, в общем смотрим на скрин ниже, положение переключателя должно быть в "Выкл".
Используйте SMTP
Вы можете использовать любые плагины для WordPress, которые реконфигурируют функцию wp_mail() для использования SMTP вместо mail (). Я рекомендую WordPress Gmail smtp .
Если вы не знаете, как установить эти плагины, вы должны проверить мой другой пост, WordPress Gmail smtp – Настраиваем отправку почты с сайта через почту Google.