При использовании сайта на cms WordPress совместно с плагином Contact Form 7, случается так, что у некоторых посетителей не отправляются веб-формы, созданные плагином. Текст ошибки выглядит так: «При отправке сообщения произошла ошибка. Пожалуйста, попробуйте ещё раз позже.»
Обычно такая ошибка возникает когда указан неверный исходящий адрес, либо плагин или скрипт вмешивается в работу плагина веб-форм. Первое, что необходимо проверить для решения проблемы, это адрес исходящий почты в настройках проблемной формы:
Адрес должен соответствовать домену сайта. Например, если у вас домен website.ru, то в поле «От кого» должен стоять ящик этого домена, например mail@website.ru. При этом исходящий адрес может даже не существовать, поэтому можете указать абсолютно любую почту, главное — чтобы она соответствовала домену сайта.
Если способ не помог, то проверьте настроен ли сервис Recaptcha. Для этого зайдите в админке по пути: Contact Form 7> Интеграция.
Если в блоке «ReCaptcha» написано «reCAPTCHA активна на этом сайте.», то нужно отключить привязку ключей. Для этого нажмите на кнопку «Настройка интеграции», а затем «Удаление ключей».
ReCaptcha — это сервис Google, который на основе своих алгоритмов определяет человек вы или бот. Иногда сервис ошибается и не дает отправлять формы на сайте. После удаления ключей ваш сайт не буден защищен от спама, но вы можете установить плагин «ReCaptcha v2 for Contact Form 7», где не будет проблемы с определением пользователей.
Что делать если способы не помогли?
В таком случае последовательность действий такая:
- Нужно отключить все плагины, кроме Contact Form 7, затем проверить работу форм. Если проблема решилась, то методом исключения включаете каждый плагин по отдельности и находите конфликтный.
- Если не помогло, то открываем файлы шаблона header.php и footer.php и удаляем подключение сторонних скриптов. Проверяем работу форм. Также, если формы заработали, применяете метод исключения.
Вышеописанные способы в 99% случаев должны помочь решить проблему. Если у вас осталась ошибка, то прошу связаться с нами любым доступным способом, указанным ниже, либо на странице контакты
-
#1
Проблема такая — есть форма через Contact Form 7, валидность проходит. После заполнения формы выдает ошибку «При отправке сообщения произошла ошибка. Пожалуйста, попробуйте ещё раз позже.» Когда в поле «Кому» ставлю свою почту — письма приходят, ошибки нет. Меняю на корпоративную почту (которая отличается 2мя буквами) — выдает ошибку. А иногда отправляет. Работает через раз, с чем связано не пойму. Может кто сталкивался, что сделать надо?
-
#2
отправлять почту не через пхп-маил, а через смтп?
-
#3
Устанавливала Postman SMTP этот плагин, там все настроила по смтп через хостинг, тестовое письмо отправляется, а Contact Form также не работает. То есть работает, но в 2-х случаях из 5.
-
#4
а использование КонтактФорм принципиально или подойдет любая форма писем?
просто я давно отказался от этого монстра и пользуюсь его более легкими конкурентами, которые могут только создавать формы для писем и отправлять их, но делают это хорошо…
я к тому, что форма простая или там есть какие-то навороты, что без этого плагина не обойтись?
-
#5
Не-не, можно любой другой плагин, на этот у меня только скрипт написан чтобы в поле сразу вписывалось название товара, но его можно переделать под другой плагин. Формы самые примитивная — «перезвоните нам» — 3 поля и кнопка. А можно тогда аналоги плагины?
-
#7
Спасибо, попробую)
В борьбе за чистоту отправляемых с сайта писем (через обратные формы связи) вебмастера часто усердствуют, устанавливая дополнительные плагины на WordPress и дополняя «Чёрный список» (Настройки — Обсуждения) всевозможными spam-фразами. И в один момент наблюдается картина, когда популярный плагин Contact Form 7 дает сбой и отправленные данные определяет как спам (не отправляет письма, даже если ничего крамольного вы не пишите и заполняете все поля согласно всем правилам жанра). Но даже если отключить все плагины антиспама, проблема остается!
Что делать когда Contact Form 7 при отправке письма с сайта выдает «ошибка при отправке сообщения«? Эта фраза может звучать по разному, как «Ошибка при отправке сообщения. Пожалуйста, попробуйте позже или обратитесь к администратору сайта» или «Сообщение отправить не удалось» или вердикт конкретный — «Отправленные данные определены как спам«.
К своему удивлению, не так давно я обнаружил, что на огромном числе моих сайтов и сайтов клиентов, CF7 исправно отправлял почту в десктопной версии сайта, а в мобильных браузерах все «Отправленные данные определены как спам» (с мобильных телефонов не удавалось отправить письмо ни под каким соусом). Примечательно, что отправку форм с мобильных устройств я никогда не тестировал и она, оказывается, исправно не работала все это время!
А у вас работает форма связи на Contact Form 7 в мобильной версии? Если нет, давайте искать причину!
Первым делом, необходимо удостоверится, что CF7 действительно ругается на SPAM. В вашем браузере откройте «Инструменты разработчика» (в Chrome — Меню — Дополнительные инструменты — Инструменты разработчика), найдите вкладку Network — найдите feedback, в котором откройте вкладку Preview (как на скрине):
Здесь мы видим не двухзначный вердикт, почему наша форма отказалась отправить почту:
into: "#wpcf7-f1454-p71-o1" message: "Ошибка при попытке отправить сообщение. Пожалуйста, повторите попытку позже." status: "spam"
Поиск по коду плагина, находит такие строчки:
elseif ( $this->spam() ) { // Spam! $this->status = 'spam'; $this->response = $contact_form->message( 'spam' ); }
Таким образом, при отправке сообщений, CF7 руководствуется встроенной функцией определения спама в WordPress, а именно «Черным списком» (Настройки — Обсуждения). И порой руководствуется совсем непонятным образом: определяет SPAM, даже если слово не встречается в тексте, определяет SPAM только лишь в мобильных браузерах и т.д. и т.п.
Черный список используется в WP для глобального определения SPAM. Это пользовательский список слов. Если комментарий содержит какие-либо из этих слов в своём тексте, имени автора, URL, адресе e-mail или IP, то он будет помечен как спам. Каждое слово или IP задается с новой строки. Используется поиск по подстроке, то есть по слову “press” будет найдено “WordPress”.
Экспериментальным путем удалось установить, что пустой Черный список не мешал отправке почты с сервера, но это не было бы правильным решением, так как Черный список в WP — весьма эффективное средство против SPAMеров в комментариях.
Когда причина определена, остается научить Contact form 7 не определять SPAM по Черному списку! Для этого достаточно добавить в файл functions.php Вашей текущей темы следующую строчку кода:
add_filter('wpcf7_spam', '__return_false');
Оцените материал:
(19 голоса, рейтинг: 5,00 из 5)
Загрузка…
Contact Form 7 – Настраиваем отправку письма, и исправляем ошибки при отправке писем
Contact Form 7 – отличный плагин для отправки форм с сайта. Сегодня поговорим о том как исправить ошибки при отправке сообщений, так же я предоставлю готовый HTML шаблон и настройки для писем CF7
Contact Form 7 очень популярный плагин и проверенный инструмент для создания форм, на данной странице я поделюсь с Вами свои «рецептом» заполнения формы отправки письма (эта область которая находится на странице настройки формы на вкладке «Письмо»). Так же мы рассмотрим возможные причины и их решения в случае если Вы не получаете электронные письма от CF7 или получаете уведомления об ошибках при попытке отправить электронное письмо.
Я часто использую данный шаблон для отправки писем как на своих сайтах, так и на сайтах клиентов. Рекомендую его использовать, так как он максимально комфортен для как конечного клиента, так и для себя любимого :).
Вводим данные в соответствии своему сайту.
Кому:
От кого:
Тема:
???? [_site_title] - ФОРМА"КОНТАКТНАЯ ФОРМА"
Дополнительные заголовки:
Дополнительные заголовки оставляем пустыми и не трогаем!
Тело письма: Здесь обращаю Ваше внимание на то что логотип должен быть четко «квадратной формы» для того что бы красиво смотреться в письме. И иметь размеры 150 на 150 пикселей.
<img style="max-width: 150px !important;" 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;" 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, как это сделать я подробно описал здесь.):
А вот в поле «От кого» я ввел
Почта может быть поддельной, и это не страшно, здесь главное указать домен своего сайта.
Другие плагины могут вызвать проблемы
Если первое решение не помогает, попробуйте отключить все плагины, кроме 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.
Источник записи: