Недавно возникла проблема, преимущественно на сайтах WordPress. Не работает Contact form 7 не отправляет письма. Мы с моим коллегой, верстальщиком смогли решить данную проблему.
Началось все с того, что мне написали несколько человек, сказав, что не могут отправить письмо через форму обратной связи. При нажатии на кнопку «Отправить» просто крутится иконка отправки и ничего не происходит.
Оказалось, что плагин Contact form 7 действительно не отправляет письма. Мы стали искать причину. Все наши пострадавшие, были пользователями «яблочной» продукции. То есть, они отправляли сообщения, пользуясь Сафари браузером.
Мы выяснили, что письма не отправляются только с операционных систем MacOS и IOS. А точнее из браузера Safari версии 11.1 и выше (на iOS начиная с версии 11.3). И при условии, если в форме обратной связи предусмотрено прикрепление файла.
Если пользователь не прикрепил никакого файла к сообщению, то браузер блокирует ajax запрос, который используется во всех новых версиях Contact form 7 для отправки.
Ajax – аббревиатура значит Asynchronous Javascript and XML. Простыми словами – это технология, благодаря которой страница полностью не обновляется, а обновляется лишь ее часть.
В Contact form 7, благодаря запросу Ajax, сообщения отправляются без перезагрузки страницы. Но, в последних версиях браузера Safari появился баг, который выдает ошибку и не дает отправить письмо без прикрепления к нему файла.
Мы потратили несколько часов, чтобы во всем разобраться. Если и у вас, Contact form 7 не отправляет письма, вот вам готовая инструкция.
Решение
Содержание
- 1 Решение
- 1.1 Первый способ (быстрый)
- 1.2 Второй способ (правильный)
- 2 Настройка Contact Form 7
- 2.1 Шаблон формы
- 2.2 Письмо
- 2.3 Уведомления при отправке формы
- 2.4 Дополнительные настройки
- 2.5 Ошибка при отправке сообщения. Попытайтесь позже или обратитесь к администратору сайта.
- 3 Ошибки в теме
- 4 Конфликты в плагинах
- 5 Письма попадают в СПАМ
- 6 Проблема с хостингом
- 7 Настройка почты в WordPress
- 8 Не работает contact form 7 из-за вашей темы
- 8.1 Долго крутится загрузка / лоадер в Contact Form 7
- 9 Конфликт плагинов с Contact Form 7
- 10 Не приходят сообщения в contact form 7
- 10.1 Сообщения с contact form 7 попадают в спам
- 10.2 Contact Form 7 не работает из-за хостинга
- 11 Проблемы почему Contact Form 7 не отправляет письма.
- 11.1 Проблема № 1. Ошибки в теме (шаблоне) сайта.
- 11.2 Проблема № 2. Крутится значок загрузки (лоадер), но письмо не отправляется.
- 11.3 Причина № 3. Конфликт Contact Form 7 с другими плагинами.
- 11.4 Причина № 4. Сообщения не приходят на почту.
Первый способ (быстрый)
Самый банальный, но подойдет тем, кому важно чтобы contact form 7 заработал, но копаться в коде своего сайта вы боитесь.
Вам достаточно убрать из формы возможность прикреплять файлы.
Именно так мы и поступили сразу, как узнали. Разбираться в проблеме днем, было некогда… Да и решение мы нашли не сразу… А люди днем активно пишут и надо чтобы письма отправлялись, хоть и без прикрепления дополнительных файлов.
А вот уже ночью, когда рабочий день закончился, мы во всем разобрались и все исправили. И делимся этим с вами.
Это полноценное решение, берите и пользуйтесь )
Второй способ (правильный)
Чтобы плагин Contact form 7 снова заработал у пользователей Safari, вам нужно отключить использование технологии Ajax.
Делается это не сложно.
Надо просто добавить в файл function.php вашей темы WordPress вот этот код:
function wpcf7_load_js_not_safari11() {
global $is_safari;
if($is_safari) {
return false;
} else {
return true;
}
}
add_filter( ‘wpcf7_load_js’, ‘wpcf7_load_js_not_safari11’ );
После добавления этой модификации в ваш шаблон WordPress, Contact form 7 снова будет отправлять сообщения обычным способом, с перезагрузкой страницы, без использования Ajax.
Надеюсь, с выходом нового обновления, в браузере Сафари пофиксят этот баг. А пока правим сами.
P.S. Если у ваших коллег, Contact form 7 тоже не отправляет письма, не жмотьтесь, дайте им ссылку на эту статью 😉
С уважением, Яна Ходкина и ее коллега веб-мастер, который не захотел писать свое имя 🙂
yanakhodkina.com
Добрый день!
Нужна помощь в решении вопроса по использованию плагина Contact Form 7
Проблема следующая:
У нас есть основной сайт компании: на одном шаблоне и к нему через админку WP по сетке привязаны пять сайтов-поддоменов (мультисайты). вида: и т.д., построенные на другом шаблоне.
На одном из сайтов-поддоменов (например, на ), при помощи плагинов Contact Form 7 и Easy FancyBox я создал форму обратной связи и поместил ее на кнопку.
Ошибка: Контактная форма не найдена.
Код разместил в файле footer.php шаблона, чтобы кнопка отображалась на всех пяти поддоменах.
<div class=»contact-us»>
<a id=»upbutton» href=»#contact_form_pop_up» class=»fancybox-inline» onclick=»smoothJumpUp(); return false;»>
<img style=»bottom: 14%; right:5%; width: 80px; position:absolute;» src=» http://gkvector.com/wp-content/uploads/2017/03/trubka.png» alt=»»>
</a>
</div>
<div style=»display:none» class=»fancybox-hidden»>
<div id=»contact_form_pop_up»>
<strong>Закажите обратную связь прямо сейчас!</strong>
<?php echo do_shortcode(‘
Ошибка: Контактная форма не найдена.
’); ?>
</div>
</div>
<style>
#upbutton {
height: 60px;
width: 80px;
bottom: 110px;
right: 70px;
cursor: pointer;
display: block;
position: fixed;
z-index: 999;
}
</style>
На поддомене где в админке WP создана CF7, указанная в коде, форма работает идеально.
Однако на другом поддомене, например, , форма уже не запускается, ибо в его настройках формы с id=»6999″ просто напросто нет… Выдает ошибку:
Закажите обратную связь прямо сейчас!
Ошибка: Контактная форма не найдена.
Если создать на этом поддомене свою аналогичную форму обратной связи, то у нее будет уде другой номер ID… Если полученный новый шорткод вставить в код, то все заработает, но отключится на первом поддомене…
Как быть, есть ли какое-то решение?
WP Version 4.3.2
forundex.ru
Настройка Contact Form 7
Тут нам придется разобраться в четырех вкладках — «Шаблон формы«, «Письмо«, «Уведомления при отправке формы» и «Дополнительные настройки«. Рассмотрим каждую в отдельности.
Шаблон формы
Пожалуй, самая важная из вкладок настроек плагина. Шаблон формы представляет из себя редактор кодов плагина. Тут уже находятся существующие короткие коды стандартной контактной формы. Можно их удалять или добавлять новые. Рассмотрим назначение всех кодов, доступных в редакторе.
1. text — текстовое поле для ввода короткого текста в одну стоку (имя, тема сообщения и т.д.).
2. email – поле для ввода адреса email. Письмо с некорректным адресом не удастся отправить, именно этим и отличается поле от простого текстового. (Оба этих поля обычно обязательны к заполнению, что исключает рассылку анонимных сообщений).
3. URL — адрес сайта или страницы.
4. tel — номер телефона, не надо объяснять что это такое.
5.1 number — число (spinbox), количество чего-либо, например заказываемого товара.
5.2 number — число (slider), что это за шляпа, я так и не понял. Скажу спасибо тому, кто мне объяснит в комментариях его назначение.
6. date — дата в формате дд.мм.гггг.
7. text area — текстовое поле, вмещает в себя текст большого объема, собственно само сообщение.
8. drop-down menu — выпадающее меню, создаст выпадающее меню.
9. Checkboxes – генерирует «чекбоксы». Пользователь выбирает нужное установкой галочек.
10. Radio buttons – в буквальном переводе «радиокнопки». Настройка, как и в выпадающем меню. Пользователь выбирает нужный вариант из предложенных.
11. Acceptance – по принципу «С правилами ознакомлен и согласен». Пока пользователь не поставит галочку, кнопка отправки сообщения будет не активна.
12. quiz — вопрос, защита от спам-роботов. Перед отправкой сообщения необходимо ответить на однозначный вопрос, который вы зададите в настройках. Перед вертикальным слешем пишется вопрос, а за ним правильный ответ.
13. reCaptcha – тоже защита от спама, но с помощью генерируемой картинки с символами, которые необходимо ввести в поле перед отправкой сообщения. (Спам через контактную форму рассылается очень редко. Советую не использовать защиту, чтобы не раздражать отправителя).
14. file — отправка файла, генерирует код для создания кнопки выбора файла и прикрепления его к письму.
15. submit — кнопка отправки, сама кнопка, нажатием на которую, сообщение отправляется.
!!! Для наглядности, ближе к концу статьи, я размещаю форму, созданную из всех вышеперечисленных тегов, кроме каптчи. Можете оценить их в действии. Ни одно поле в форме необязательно к заполнению! Разрешаю вам наслать мне разных анонимных сообщений 🙂 🙂 :-). Цензура отсутствует.
Для примера рассмотрим процедуру добавления кода прикрепления файла «file» в контактную форму. Процесс этот довольно прост. Выполните следующие действия:
- — Поставьте курсор в то место редактора, куда должна встать кнопка прикрепления файла к письму.
- — Нажмите на кнопку «file» в верхней панели редактора шаблона формы. Откроется следующее окно.
- Если поставить тут галочку, пользователь не сможет отправить сообщение без прикрепленного файла. Обратите внимание, в коде кнопки за file появится звездочка. Эту опцию можно назначить любому полю вашей контактной формы.
- Тут итак все понятно. Скопируйте надпись в этом поле, вам она обязательно понадобится на следующей вкладке «Письмо«. Иначе прикрепленный файл просто не дойдет до адресата.
- Сюда впишите разрешенный размер файла. Если оставить поле пустым, то по умолчанию ограничитель будет равен 1 mb . Допускается вписывать только целые числа просто в байтах, в mb или в kb.
- Разрешенные типы файлов вписывайте через вертикальный слэш. Если ничего не писать, то по умолчанию будут разрешены файлы с расширениями jpg, jpeg, png, gif,pdf, doc, docx, ppt, pptx, odt, avi, ogg, m4a, mov, mp3, mp4, mpg, wav, wmv.
- Если не знаете для чего нужны поля Id attribute и Class attribute, то и заполнять их не следует. А завершающим действием останется только нажатие кнопки «Insert Tag«.
В редакторе формы можно дописать над кодом «Прикрепить файл«, чтобы посетители не ломали голову о назначении этой кнопки. И не забудьте вставить теги абзаца и переноса строки, о которых я упоминал выше.
Приступим к рассмотрению следующей вкладки — «Письмо«.
Письмо
Итак, после создания своей контактной формы перейдите на вкладку «Письмо». Эта часть настроек отвечает за доставку, внешний вид и информативность писем, пришедших адресату, то есть Вам.
- Обязательно впишите сюда адрес своей электронной почты, на который будут приходить сообщения. Иначе, почта просто не дойдет.
- Два коротких кода «[your-name]» и «<[your-email]>» сообщат имя отправителя и его E-mail.
- Тема сообщения, с которой к вам обращается посетитель.
- ——
- Само тело сообщения. Вы можете использовать для информативности любые коды, которые использовали в шаблоне (они представлены в шапке вкладки, сразу под надписью «In the following fields, you can use these mail-tags:«. Сопровождайте коды в теле сообщения понятными пояснениями, например От кого, Тема сообщения, Тело сообщения.
- Можно не получать пустые строки с полей, необязательных к заполнению, если отправитель их не заполнил. Попробуйте также опцию HTML формата письма.
- В поле «File Attachments» обязательно вставьте код для вложения, если вы поставили кнопку прикрепления файла. Об этом я говорил выше.
- Опцию «Письмо 2» активируют в качестве дополнительного почтового шаблона для автоответчика. Об этой опции и как ей пользоваться я напишу немного позже.
Уведомления при отправке формы
Тут все переведено и понятно, даже скриншот делать не буду. Всплывающие сообщения, написанные в полях вкладки, получит отправитель при неправильном заполнении формы, успешном или неуспешном отправлении сообщения.
С переводом на русский язык тут пока проблем нет. Однако, с каждым обновлением плагина картина может меняться, как на других вкладках. Если это произойдет, сообщите в комментариях, переведем.
Дополнительные настройки
Эта часть статьи еще не готова к публикации. Скажу лишь, что тут вы можете настроить отслеживание заполнения форм пользователями, например в Яндекс метрике.
Можно еще изменить размер полей в контактной форме. Размер текстового поля в одну строчку задается числовыми значениями в конце тега перед закрывающейся квадратной скобкой. Например, вот тег для имени с новыми размерами — [text* your-name 50/41]. Здесь 50 — длина текстового поля, а 41 — количество символов, которое можно в это поле прописать. Если ничего не прописывать, длина текстового поля по умолчанию равняется 40, а разрешенное количество символов до бесконечности.
Вот тег с измененными размерами для сообщения — [textarea your-message 80×10]. Здесь 80 — длина поля в символах, а 10 — его высота в строчках. Экспериментируйте с этими циферками пока размеры полей вашей контактной формы не будут гармонично вписываться в дизайн страницы. Ниже картинка для наглядности со стандартной контактной формой.
Вот и все настройки плагина Contact Form 7.
Ошибка при отправке сообщения. Попытайтесь позже или обратитесь к администратору сайта.
Вот такое сообщение всплывает под формой Contact Form 7 в некоторых случаях после попытки отправить сообщение администратору сайта.
1. Почти всегда ошибка кроется не в плагине, а в php функции mail() сервера. Либо эту функцию хостинг не поддерживает, либо функция не включена или работает с ошибками. Если функция php_mail() поддерживается хостингом, то очень часто причиной сбоя отправки сообщений является:
- — Тестовый период хостинга. В этот период функция отправки почты выключена по умолчанию. Решение – оплатить услуги хостинга;
- — Сбой функции на сервере. Решение – обратиться в службу поддержки хостинга. Часто, для восстановления функции, достаточно отлинковать домен, а затем прилинковать его обратно.
2. Намного реже ошибки в отправке сообщений возникают из-за конфликта Contact Form 7 с другим плагином. В этом случае помогает поочередная деактивация плагинов. После деактивации которого Contact Form 7 заработает, тот и является конфликтным.
P.S. Коллеги, проверяйте папку СПАМ вашего почтового ящика после отправки письма самому себе при тестировании работы плагина. Это самая распространенная причина «недоставки» писем адресату, особенно на gmail.
wordpress-book.ru
Ошибки в теме
Часто проблема неработоспособности контактной формы может быть вызвана неподходящей темой или ошибкой в ее JavaScript-коде. Чтобы это выяснить, следует активировать другую тему, перейдя в админ-панели Внешний вид -> Темы. После этого необходимо еще раз проверить работу формы. Если после этого сообщения отправляются, и почта работает, то это значит, что нужно править ошибки в теме, так как именно в ней и заключается причина ошибки.
Конфликты в плагинах
Часто случается, что Contact Form 7 может не работать из-за того, что другие плагины сайта конфликтуют с ним. В результате WordPress может не отправлять почту. Чтобы исключить эту проблему, следует поочередно отключить остальные плагины один за одним, каждый раз обновляя страницу обратной связи. Если после отключения одного из плагинов контактная форма заработала, значит Вам удалось выяснить проблему. Ищите, чем заменить конфликтующий плагин. Если же были отключены все плагины, а Contact Form 7 так и не работает, нужно искать ошибку дальше.
Письма попадают в СПАМ
Возможен также и такой вариант, что письма попадают в СПАМ. Если писем приходит достаточно много, спам-фильтр может начать их блокировать. Чтобы избежать этого, нужно зайти в настройки почты, которую Вы используете для WordPress-сайта, и отметить важные письма как не спам (если Вы все-таки нашли их в папке со спамом). После этого почтовый сервис должен впредь их распознавать как не спамные.
Проблема с хостингом
Часто ошибка бывает вызвана проблемами с хостингом. Очень часто это может выглядеть так: сообщение отправляется, но не приходит на почту. Это означает, что Ваш хостинг по тем или или иным причинам перестал отправлять письма. В таком случае необходимо будет выполнить самостоятельную настройку отправки почты на WordPress без участия Вашего хостинг-провайдера. Необходимо связаться с технической поддержкой Вашего хостинг-провайдера и выяснить причины проблемы. В этом случае Вы не будете получать письма не только из контактной формы WordPress, но и сообщения о новых комментариях на блоге.
Но чаще всего подобные проблемы возникают при переезде на новый хостинг. В данном случае Вам нужно обратить внимание на настройку почты на WordPress.
Настройка почты в WordPress
В WordPress имеется встроенная функция отправки писем, но не на всех хостингах работает корректно. Потому, если на сайте WordPress не отправляется почта, потребуется установить плагин WP Mail SMTP, который активизирует возможность подключаться к SMTP-серверу.
wpschool.ru
Приветствую вас дорогие друзья!
В этой статье я вам расскажу о том, почему Contact Form 7 не отправляет письма и как решить проблему с отправкой писем для плагина Contact Form 7 и для всего WordPress сайта в целом.
На самом деле, проблема с отправкой почты для Contact Form 7 возникает очень часто. В первую очередь, это зависит от того на каком хостинге размещен ваш сайт, а так же от того, какие плагины у вас установлены. Ну и, собственно говоря, от самого плагина Contact Form 7, потому что иногда у него, все-таки, случаются глюки.
Для устранения проблемы с отправкой писем Contact form 7 нам нужно будет настроить отправку почты через SMTP. Для WordPress существует множество различных плагинов для реализации данной задачи, но я, в основном работаю с плагином WP Mail SMTP потому как он достаточно прост в настройке, и он меня еще не разу не подводил. Поэтому давайте установим этот плагин и посмотрим, как его нужно настраивать.
Копируем название плагина и переходим в админку нашего сайта. Здесь переходим в «Плагины» => «Добавить новый» и устанавливаем его так же, как и другие плагины. После его активации в разделе «Настройки» появится новый пункт, который называется «email».
- 1.Первое что нам нужно сделать — это заполнить поле «From Email». Сюда вы вставляете адрес вашего почтового ящика размещенного на сервисе Яндекс или Gmail.
Для решения проблемы c отправкой писем Contact form 7 я создала специальный почтовый ящик на Яндекс, поэтому в этом поле я указываю его.
- 2.Далее, в поле «From name» можете написать свое имя или название сайта либо оставить его пустым.
- 3.В графе «Mailer» должна быть выбрана опция «Send all WordPress email via SMTP».
- 4.В разделе «SMTP Options», в параметре «SMTP Host», вместо значения localhost прописываем smtp.yandex.ru.
- 5.Значение «SMTP Port» оставляем по умолчанию. Если вы будите использовать почтовый ящик Gmail, то параметры SMTP Host и SMTP Port будут отличаться.
- 6.В параметре «Encryption» указываем «Use TLS encryption».
- 7.В параметре «Authentication», ставим «Yes: Use SMTP authentication»
- 8.Теперь, в поле «Login» вам нужно ввести адрес почтового ящика и в поле «Password» — пароль к нему. Т.е., у вас отправка письма будет осуществляться как бы через ваш почтовый ящик на сервисе.
- 9.После того, как все настройки заданы, нажимаем на кнопку «Сохранить изменения».
Теперь нам нужно проверить, правильно ли мы все настроили. Для этого воспользуемся опцией «Send test email». В этом поле я укажу свой почтовый ящик на Яндекс и отправлю тестовое сообщение.
Здесь нам нужно будет ввести адрес почтового ящика, на который вам бы хотелось получать все ваши письма, заявки, уведомления с данного сайта. Это не обязательно должен быть почтовый ящик, который вы использовали в настройке, это может быть любой другой. Желательно, что бы этот email находился не на mail.ru, потому, что они ужесточают свои спам-фильтры, и все письма, которые отправляются в автоматическом режиме с какого-то сайта, либо какого-то сервиса могут попадать в спам. Поэтому, лучше использовать тот же Яндекс или Gmail.
После нажатия на кнопку «Send Test» мы увидим сообщение о том, что наше письмо было отправлено, после чего мы можем перейти в почтовый ящик и проверить, дошло ли оно.
Итак, я получила вот такое сообщение:
В тексте написано, что данное сообщение было сгенерировано плагином WP Mail SMTP. Вверху, в адресе отправителя, мы видим данные, которые указывали в настройке плагина.
То есть email, который я указала в настройках плагина, указывается в качестве отправителя.
Теперь если я попробую отправить сообщение с формы Contact Form 7, то оно будет успешно доставлено.
Данный плагин так же можно использовать в том случае, если у вас не только с Contact Form 7 не приходят письма, а в целом, почта с сайта WordPress не доходит на ваш email. То есть, в этом случае, вы можете настроить отправку через SMTP, и таким образом решить эту проблему.
Я сталкивалась с такими хостингами, у которых возможность отправки через SMTP активировалась только на каких-то более дорогих тарифных планах, либо за отдельную плату.
Конечно, на большинстве хостингов эта функция есть, проблем с ней ник каких не возникает. Но если вдруг у вас, при настройке отправки писем, ни чего не получается, то есть смысл написать в техподдержку вашего хостинга и уточнить, осуществляется ли у них отправка почты через SMTP и в чем могут выть вызваны возникающие ошибки, возможно это проблема самого хостинга.
Вы также можете посмотреть видео инструкцию по данной теме:
Что же, на этом у меня все. Надеюсь, эта статья была для вас полезна, и теперь у вас не будут возникать проблемы с отправкой писем как для Contact form 7, так и для всего сайта WordPress в целом. Пишите комментарии, подписывайтесь на мою рассылку и не забудьте подписаться на новости блога и мой канал на YouTube чтобы не пропустить ничего интересного.
С уважением Юлия Гусарь
impuls-web.ru
Не работает contact form 7 из-за вашей темы
к менюДля начала опишу основную причину всех проблем с CF7 — плохая тема или ошибка в яваскрипте темы. Например вы забыли указать вызов таких функций как wp_head(); и wp_footer(); в шапке и футере соответственно. Или же у вас ошибка в яваскрипт коде, которая мешает работе Ajax на вашем сайте. Для исключения проблем с темой стоит зайти в админку вордпресса, вкладка «Внешний вид» — «Темы»
и в ней нажать просмотреть дефолтную тему, вот как на рисунке:
И в таком тестовом режиме проверить работу отправки сообщений. Если форма обратной связи заработает следующие шаги вам читать не нужно, надо решать проблему в своей теме, она и есть основная причина всех проблем.
К типичным проблемам с темой можно отнести ошибки или пустые строки в ответах, которые портят json формат.
Долго крутится загрузка / лоадер в Contact Form 7
к менюСудя по комментариям, это довольно частая проблема, когда после нажатия на кнопку отправить заначек загрузки крутится но сообщений никаких не выводится. При этом бывает что contact form 7 не приходят письма, а бывает что приходят. Все зависит от того, как обработались отправленные данные.
Для начала, что же такое лоадер?
Это вот такой маленький значок загрузки возле вашей кнопки отправить:
Очень часто бывает, что этот значок не исчезает и крутится постоянно.
Сейчас я попробую пошагово пояснить как отследить такую проблему.
Нам нужен:
- браузер Google Chrome
- страница вордпресс с ошибкой в CF7 (если вы сюда попали значит она у вас уже есть 🙂 )
1) Запускаем браузер Google Chrome и в нем открываем нашу страницу с Contact Form 7.
2) Нажимаем в браузере правую кнопку мыши и в выпадающем окне выбираем «Просмотреть код», как на скине:В итоге у нас появится вот такое окно в низу экрана браузера, как на кликабельном скине ниже (Вам нужно кликнуть сначала на значок под стрелочкой «1», а потом на «2»):
3) У своей формы нажимаем кнопку отправить сообщение, перед этим конечно нужно заполнить все поля формы. Не зависимо от результата у вас должно появится вот такого плана сообщение: На название страницы (у меня test-page) можно кликнуть и мы увидим вот такой рисунок:
Забегая на перед скажу что это сообщение об успешной отправке, то есть у вас должно быть точно так же в идеале.
Ниже, я покажу вам пару скинов как может выглядеть ошибка и что вы в этом дебагере увидите (смотрите кликабельные скины):
Чтобы решить такую проблему достаточно найти и удалить ошибку или лишний текст в коде.
Конфликт плагинов с Contact Form 7
к менюContact Form 7 может не работать по той причине, что другие плагины конфликтуют с CF7 вордпресс. Причина все та же: пустые строки в аякс ответах.
Многие спрашивают почему лоадер крутится, а отправка не идет?
Одним из решений этой неисправности есть (нажимайте на цифру и читайте пошаговую инструкцию):
Не приходят сообщения в contact form 7
к менюСамый простой пример, когда contact form 7 не работает — сообщения отправляются:
«Ваше сообщение было отправлено успешно. Спасибо.»
А реально сообщения не приходят на почту. Причин такого трабла довольно много сейчас попробуем пробежаться по основным:
Сообщения с contact form 7 попадают в спам
к менюДа, иногда такое бывает. Ваш спам фильтр сердится на большое количество писем с одного адреса и начинает блокировать их. Чтобы найти сообщения с contact form 7, которые были отправленные, но попали в спам войдите в свой почтовик и скажите ему что это не спам. Умные почтовики после этого будут нормально показывать новые письма.
Contact Form 7 не работает из-за хостинга
к менюВозможна ситуация, когда ваш хостинг по какой либо из причин перестает отправлять письма, точнее вашему скрипту он говорит что письмо будет отправлено и ставить его на очередь. А очередь не продвигается. Такая ситуация возможна при атаке на сервер или массовую рассылку писем. Решить эту проблему без участия вашего хостинг провайдера — не возможно, нужно писать письмо в тех. поддержку и ждать ответа. Иногда на это уходит больше дня, особенно если таких как вы несколько сотен человек :-).
Совсем забыл, бывают хостинги, которые в нычку блокируют отправку сообщений или делают вид что забыли включить smtp или еще что нибудь. Такая ситуация у меня приключалась 2 раза с хостингами на буквы «tim…» и «ht…» (не хочу делать черного пиара) так как не знаю случайно у них это получилось или это закономерность. Письмо с текстом «Не отправляется почта с вашего сервера… До переноса сайта на этот хостинг все работало…» решает проблему очень быстро :-).
Если ваш хостинг начинается на эти буквы, или возможно он им подражает, трабл contact form 7 не отправляет письма можно решить написав запрос в тех поддержку.
help-wp.ru
Contact form 7 — известный плагин для WP, который позволяет делать самые разные формы. Но иногда случается такое, что он перестает отправлять письма на указанный в его настройках почтовый адрес.
На самом деле — почти всегда Contact form 7 тут не при чем, а всему виной спам-фильтры почтовиков, потому что они считают ваше письмо мега-спамом такого уровня, что оно даже в папку «Спам» не падает, а просто убивается на подлете. И очень редко глючит сам сервер, а именно функция PHP — mail.
Итак, поехали исправлять.
Первым делом нужно проверить работает ли у вас на хостинге этот самый mail, для этого создаем на хостинге файл testmail.php с таким содержимым
<?php var_dump(mail("[email protected]","Test","Test")); ?>
Вместо [email protected] нужно конечно же написать свою почту, и файл залить туда, где вы смождете открыть его браузером
И запускаем его, перейдя по например адресу http://вашсайт/testmail.php
Если будет написано bool(true) — то значит все в порядке и почта УХОДИТ (но не доходит), если же будет написано что-то другое — то скопируйте это и пишите в ТП хостера.
Итак mail работает, но почта не доходит.
Первый вариант — это повысить уровень доверия почтового сервера в вашему домену, гуглите что такое dkim
и SPF и действуйте.
Второй вариант — это просто завернуть все сообщения с вашего сайта через SMTP, как обычный почтовый клиент.
Для этого зарегистрируйте новый почтовый ящик, например для Яндексе (или используйте свой) и установите на WP плагин https://ru.wordpress.org/plugins/easy-wp-smtp/. Вот скрин его настроек, я думаю все должно быть понятно
После заполнения учетных данных, можно сразу проверить их корректность, введя в эти поля
E-mail адрес, тему и сообщение соответственно.
После этого, если все корректно настроено — то письма будут доходить.
P.S. В Сети также пишут, что необходимо чтоб адрес почты указанный в Contact form 7 совпадал с адресом указанным в From Email Address и SMTP username — этот момент я не проверял, т.к. у меня он совпадал изначально
P.S.2 Можно взять любой другой плагин схожей функциональности, для этого нужно искать в репозитории плагинов вот так https://ru.wordpress.org/plugins/search/wp+mail+smtp/ — там даже на русском можно найти варианты, однако у меня заработал именно этот, с первыми двумя Contact form 7 так и не заработал.
reset.name
Проблемы почему Contact Form 7 не отправляет письма.
Проблема № 1. Ошибки в теме (шаблоне) сайта.
Не редко сбои в работе плагина могут появляться из-за ошибок в java скрипте самой темы. Которая мешает нормальной работе Ajax на ресурсе. Не секрет, что многие начинающие блогеры используют бесплатные темы, которые были скачаны из непонятных источников в интернете. Многие такие шаблоны имеют ошибки в коде и не всегда корректно работают в дальнейшем.
Для проверки работоспособности темы совместно с Contact Form 7, можно попробовать установить ваш шаблон сайта на тестовый домен и посмотреть как будет работать отправка писем. Если у вас нет экспериментального домена, то можно сделать следующее.
В панели управления перейдите “Внешний вид”=> “Темы”. Для шаблона которым вы пользуетесь, нажмите кнопку “Просмотреть”. В режиме тестового просмотра темы проверьте как работает форма обратной связи. Если все работает значит причина проблем в самой теме. Попытайтесь найти их самостоятельно, а лучше смените тему сайта.
Проблема № 2. Крутится значок загрузки (лоадер), но письмо не отправляется.
Причина, как и в первом случае. Создаются неправильные входные параметры из-за ошибок в теме или плагине. Обработчик форм на Java скрипте не получает json формат данных и не понимает, что нужно сделать. Решение проблемы в удалении ошибок и лишнего текста в коде.
Причина № 3. Конфликт Contact Form 7 с другими плагинами.
Довольно частая причина на wordpress, когда плагины перестают нормально работать. Поочередно отключаем все установленные плагины, обновляем страницу и проверяем работоспособность формы обратной связи.Таким образом находим конфликтный плагин. Часто такая проблема возникает при очередном обновлении темы или плагинов.
Причина № 4. Сообщения не приходят на почту.
Бывает, что форма вроде работает и вы получаете уведомление “Ваше сообщение отправлено”, но оно не доходит на почту. Есть несколько причин данной проблемы:
- Сообщения попадают в папку спам. Наблюдается, когда происходит частая отправка сообщений с одного и того же адреса и почтовый сервис расценивает их как спам. Для устранения данной причины вам следует пометить эти письма как “Не спам”.
- Проблемы со стороны хостинга. Довольно распространенная причина когда хостинг перестает отправлять сообщения. Это часто встречается при использовании бесплатных хостингов. Обращение в службу поддержки с текстом “Contact Form 7 не отправляет письма”, обычно помогает решить вопрос. Кстати на моем сайте приключилась именно эта беда. Как я с ней справился, чтобы не зависеть от хостеров я поведаю ниже.
sergeyneznamov.ru
Здравствуйте друзья! Недавно обнаружил, что у меня на сайте не работает обратная связь с посетителями и установленный плагин Contact Form 7 не отправляет письма. Причем о данной неприятности узнал случайно, из сообщения в VK от постоянного посетителя блога. До этого форма обратной связи работала исправно, без нареканий.
Изучение проблемы выявило ряд недостатков в работе плагина Contact Form 7, который перестает нормально отправлять письма. Давайте рассмотрим основные причины сбоя в работе плагина обратной связи сайта Contact Form 7 и как их можно устранить.
Проблема № 1. Ошибки в теме (шаблоне) сайта.
Не редко сбои в работе плагина могут появляться из-за ошибок в java скрипте самой темы. Которая мешает нормальной работе Ajax на ресурсе. Не секрет, что многие начинающие блогеры используют бесплатные темы, которые были скачаны из непонятных источников в интернете. Многие такие шаблоны имеют ошибки в коде и не всегда корректно работают в дальнейшем.
Для проверки работоспособности темы совместно с Contact Form 7, можно попробовать установить ваш шаблон сайта на тестовый домен и посмотреть как будет работать отправка писем. Если у вас нет экспериментального домена, то можно сделать следующее.
В панели управления перейдите “Внешний вид”=> “Темы”. Для шаблона которым вы пользуетесь, нажмите кнопку “Просмотреть”. В режиме тестового просмотра темы проверьте как работает форма обратной связи. Если все работает значит причина проблем в самой теме. Попытайтесь найти их самостоятельно, а лучше смените тему сайта.
Проблема № 2. Крутится значок загрузки (лоадер), но письмо не отправляется.
Причина, как и в первом случае. Создаются неправильные входные параметры из-за ошибок в теме или плагине. Обработчик форм на Java скрипте не получает json формат данных и не понимает, что нужно сделать. Решение проблемы в удалении ошибок и лишнего текста в коде.
Причина № 3. Конфликт Contact Form 7 с другими плагинами.
Довольно частая причина на wordpress, когда плагины перестают нормально работать. Поочередно отключаем все установленные плагины, обновляем страницу и проверяем работоспособность формы обратной связи.Таким образом находим конфликтный плагин. Часто такая проблема возникает при очередном обновлении темы или плагинов.
Причина № 4. Сообщения не приходят на почту.
Бывает, что форма вроде работает и вы получаете уведомление “Ваше сообщение отправлено”, но оно не доходит на почту. Есть несколько причин данной проблемы:
- Сообщения попадают в папку спам. Наблюдается, когда происходит частая отправка сообщений с одного и того же адреса и почтовый сервис расценивает их как спам. Для устранения данной причины вам следует пометить эти письма как “Не спам”.
- Проблемы со стороны хостинга. Довольно распространенная причина когда хостинг перестает отправлять сообщения. Это часто встречается при использовании бесплатных хостингов. Обращение в службу поддержки с текстом “Contact Form 7 не отправляет письма”, обычно помогает решить вопрос. Кстати на моем сайте приключилась именно эта беда. Как я с ней справился, чтобы не зависеть от хостеров я поведаю ниже.
sergeyneznamov.ru
7 отличных плагинов для расширения функционала Contact Form 7
WPRUSe · Финты WordPress
2 лет назад
Contact Form 7 — отличный плагин, но иногда не хватает нужного функционала в нем.
я расширения существуют дополнительные плагины 1. CF7 Customizer 1:13 http://bit.ly/2jEjuJ1 2. Conditional Fields for Contact Form 7 2:13 http://bit.ly/2ksIdRy 3. Contact Form 7 Honeypot 3:17 http://bit.ly/2kau4v9 4. Contact Form 7 Dynamic Text Extension 3:57 http://bit.ly/2jYgCb5 5. Contact Form Submissions 5:30 http://bit.ly/2kAzQ9I 6. Contact Form 7 Multi-Step Forms 6:33 http://bit.ly/2jYfiFi 7. Contact Form 7 — Success Page Redirects 7:36 http://bit.ly/2ksDEXz ********************************************************************* Хорошие темы и разработчики Divi http://bit.ly/ET_Divi WP-Puzzle http://bit.ly/wp-puzzle TemplateMonster http://bit.ly/TM_wpruse промокод на 10% wpruse ElegantThemes http://bit.ly/ArtElegantThemes ********************************************************************* Хорошие хостинги Fozzy http://bit.ly/fozzyhost купон на скидку 10% wpruse Beget http://bit.ly/BeGetArt EuroByte http://bit.ly/EuroByte ********************************************************************* Я в соцсетях Страница VK: https://vk.com/artikus13 Группа про WordPress https://vk.com/wpruse Канал на YouTube: https://www.youtube.com/user/wpdummy13 ********************************************************************* Мои сайты Блог о разном http://artabr.ru/ Блог в поддержку канала http://wpruse.ru/ ********************************************************************* Домены покупаю здесь http://fas.st/d8lQuw ********************************************************************* Хорошие хостинги Fozzy http://bit.ly/fozzyhost купон на скидку 10% wpruse Beget http://bit.ly/BeGetArt EuroByte http://bit.ly/EuroByte ********************************************************************* Поддержать канал PayPal https://www.paypal.me/artabr ЯКошелек и карточки http://yasobe.ru/na/wpruse **********************************************************************************
videosmotret.ru
Решение
Первый способ (быстрый)
Самый банальный, но подойдет тем, кому важно чтобы contact form 7 заработал, но копаться в коде своего сайта вы боитесь.
Вам достаточно убрать из формы возможность прикреплять файлы.
Именно так мы и поступили сразу, как узнали. Разбираться в проблеме днем, было некогда… Да и решение мы нашли не сразу… А люди днем активно пишут и надо чтобы письма отправлялись, хоть и без прикрепления дополнительных файлов.
А вот уже ночью, когда рабочий день закончился, мы во всем разобрались и все исправили. И делимся этим с вами.
Это полноценное решение, берите и пользуйтесь )
Второй способ (правильный)
Чтобы плагин Contact form 7 снова заработал у пользователей Safari, вам нужно отключить использование технологии Ajax.
Делается это не сложно.
Надо просто добавить в файл function.php вашей темы WordPress вот этот код:
function wpcf7_load_js_not_safari11() {
global $is_safari;
if($is_safari) {
return false;
} else {
return true;
}
}
add_filter( ‘wpcf7_load_js’, ‘wpcf7_load_js_not_safari11’ );
После добавления этой модификации в ваш шаблон WordPress, Contact form 7 снова будет отправлять сообщения обычным способом, с перезагрузкой страницы, без использования Ajax.
Надеюсь, с выходом нового обновления, в браузере Сафари пофиксят этот баг. А пока правим сами.
P.S. Если у ваших коллег, Contact form 7 тоже не отправляет письма, не жмотьтесь, дайте им ссылку на эту статью 😉
С уважением, Яна Ходкина и ее коллега веб-мастер, который не захотел писать свое имя 🙂
yanakhodkina.com
Настройка Contact Form 7
Тут нам придется разобраться в четырех вкладках — «Шаблон формы«, «Письмо«, «Уведомления при отправке формы» и «Дополнительные настройки«. Рассмотрим каждую в отдельности.
Шаблон формы
Пожалуй, самая важная из вкладок настроек плагина. Шаблон формы представляет из себя редактор кодов плагина. Тут уже находятся существующие короткие коды стандартной контактной формы. Можно их удалять или добавлять новые. Рассмотрим назначение всех кодов, доступных в редакторе.
1. text — текстовое поле для ввода короткого текста в одну стоку (имя, тема сообщения и т.д.).
2. email – поле для ввода адреса email. Письмо с некорректным адресом не удастся отправить, именно этим и отличается поле от простого текстового. (Оба этих поля обычно обязательны к заполнению, что исключает рассылку анонимных сообщений).
3. URL — адрес сайта или страницы.
4. tel — номер телефона, не надо объяснять что это такое.
5.1 number — число (spinbox), количество чего-либо, например заказываемого товара.
5.2 number — число (slider), что это за шляпа, я так и не понял. Скажу спасибо тому, кто мне объяснит в комментариях его назначение.
6. date — дата в формате дд.мм.гггг.
7. text area — текстовое поле, вмещает в себя текст большого объема, собственно само сообщение.
8. drop-down menu — выпадающее меню, создаст выпадающее меню.
9. Checkboxes – генерирует «чекбоксы». Пользователь выбирает нужное установкой галочек.
10. Radio buttons – в буквальном переводе «радиокнопки». Настройка, как и в выпадающем меню. Пользователь выбирает нужный вариант из предложенных.
11. Acceptance – по принципу «С правилами ознакомлен и согласен». Пока пользователь не поставит галочку, кнопка отправки сообщения будет не активна.
12. quiz — вопрос, защита от спам-роботов. Перед отправкой сообщения необходимо ответить на однозначный вопрос, который вы зададите в настройках. Перед вертикальным слешем пишется вопрос, а за ним правильный ответ.
13. reCaptcha – тоже защита от спама, но с помощью генерируемой картинки с символами, которые необходимо ввести в поле перед отправкой сообщения. (Спам через контактную форму рассылается очень редко. Советую не использовать защиту, чтобы не раздражать отправителя).
14. file — отправка файла, генерирует код для создания кнопки выбора файла и прикрепления его к письму.
15. submit — кнопка отправки, сама кнопка, нажатием на которую, сообщение отправляется.
!!! Для наглядности, ближе к концу статьи, я размещаю форму, созданную из всех вышеперечисленных тегов, кроме каптчи. Можете оценить их в действии. Ни одно поле в форме необязательно к заполнению! Разрешаю вам наслать мне разных анонимных сообщений ? ? :-). Цензура отсутствует.
Для примера рассмотрим процедуру добавления кода прикрепления файла «file» в контактную форму. Процесс этот довольно прост. Выполните следующие действия:
- — Поставьте курсор в то место редактора, куда должна встать кнопка прикрепления файла к письму.
- — Нажмите на кнопку «file» в верхней панели редактора шаблона формы. Откроется следующее окно.
- Если поставить тут галочку, пользователь не сможет отправить сообщение без прикрепленного файла. Обратите внимание, в коде кнопки за file появится звездочка. Эту опцию можно назначить любому полю вашей контактной формы.
- Тут итак все понятно. Скопируйте надпись в этом поле, вам она обязательно понадобится на следующей вкладке «Письмо«. Иначе прикрепленный файл просто не дойдет до адресата.
- Сюда впишите разрешенный размер файла. Если оставить поле пустым, то по умолчанию ограничитель будет равен 1 mb . Допускается вписывать только целые числа просто в байтах, в mb или в kb.
- Разрешенные типы файлов вписывайте через вертикальный слэш. Если ничего не писать, то по умолчанию будут разрешены файлы с расширениями jpg, jpeg, png, gif,pdf, doc, docx, ppt, pptx, odt, avi, ogg, m4a, mov, mp3, mp4, mpg, wav, wmv.
- Если не знаете для чего нужны поля Id attribute и Class attribute, то и заполнять их не следует. А завершающим действием останется только нажатие кнопки «Insert Tag«.
В редакторе формы можно дописать над кодом «Прикрепить файл«, чтобы посетители не ломали голову о назначении этой кнопки. И не забудьте вставить теги абзаца и переноса строки, о которых я упоминал выше.
Приступим к рассмотрению следующей вкладки — «Письмо«.
Письмо
Итак, после создания своей контактной формы перейдите на вкладку «Письмо». Эта часть настроек отвечает за доставку, внешний вид и информативность писем, пришедших адресату, то есть Вам.
- Обязательно впишите сюда адрес своей электронной почты, на который будут приходить сообщения. Иначе, почта просто не дойдет.
- Два коротких кода «[your-name]» и «<[your-email]>» сообщат имя отправителя и его E-mail.
- Тема сообщения, с которой к вам обращается посетитель.
- ——
- Само тело сообщения. Вы можете использовать для информативности любые коды, которые использовали в шаблоне (они представлены в шапке вкладки, сразу под надписью «In the following fields, you can use these mail-tags:«. Сопровождайте коды в теле сообщения понятными пояснениями, например От кого, Тема сообщения, Тело сообщения.
- Можно не получать пустые строки с полей, необязательных к заполнению, если отправитель их не заполнил. Попробуйте также опцию HTML формата письма.
- В поле «File Attachments» обязательно вставьте код для вложения, если вы поставили кнопку прикрепления файла. Об этом я говорил выше.
- Опцию «Письмо 2» активируют в качестве дополнительного почтового шаблона для автоответчика. Об этой опции и как ей пользоваться я напишу немного позже.
Уведомления при отправке формы
Тут все переведено и понятно, даже скриншот делать не буду. Всплывающие сообщения, написанные в полях вкладки, получит отправитель при неправильном заполнении формы, успешном или неуспешном отправлении сообщения.
С переводом на русский язык тут пока проблем нет. Однако, с каждым обновлением плагина картина может меняться, как на других вкладках. Если это произойдет, сообщите в комментариях, переведем.
Дополнительные настройки
Эта часть статьи еще не готова к публикации. Скажу лишь, что тут вы можете настроить отслеживание заполнения форм пользователями, например в Яндекс метрике.
Можно еще изменить размер полей в контактной форме. Размер текстового поля в одну строчку задается числовыми значениями в конце тега перед закрывающейся квадратной скобкой. Например, вот тег для имени с новыми размерами — [text* your-name 50/41]. Здесь 50 — длина текстового поля, а 41 — количество символов, которое можно в это поле прописать. Если ничего не прописывать, длина текстового поля по умолчанию равняется 40, а разрешенное количество символов до бесконечности.
Вот тег с измененными размерами для сообщения — [textarea your-message 80×10]. Здесь 80 — длина поля в символах, а 10 — его высота в строчках. Экспериментируйте с этими циферками пока размеры полей вашей контактной формы не будут гармонично вписываться в дизайн страницы. Ниже картинка для наглядности со стандартной контактной формой.
Вот и все настройки плагина Contact Form 7.
Ошибка при отправке сообщения. Попытайтесь позже или обратитесь к администратору сайта.
Вот такое сообщение всплывает под формой Contact Form 7 в некоторых случаях после попытки отправить сообщение администратору сайта.
1. Почти всегда ошибка кроется не в плагине, а в php функции mail() сервера. Либо эту функцию хостинг не поддерживает, либо функция не включена или работает с ошибками. Если функция php_mail() поддерживается хостингом, то очень часто причиной сбоя отправки сообщений является:
- — Тестовый период хостинга. В этот период функция отправки почты выключена по умолчанию. Решение – оплатить услуги хостинга;
- — Сбой функции на сервере. Решение – обратиться в службу поддержки хостинга. Часто, для восстановления функции, достаточно отлинковать домен, а затем прилинковать его обратно.
2. Намного реже ошибки в отправке сообщений возникают из-за конфликта Contact Form 7 с другим плагином. В этом случае помогает поочередная деактивация плагинов. После деактивации которого Contact Form 7 заработает, тот и является конфликтным.
P.S. Коллеги, проверяйте папку СПАМ вашего почтового ящика после отправки письма самому себе при тестировании работы плагина. Это самая распространенная причина «недоставки» писем адресату, особенно на gmail.
wordpress-book.ru
Приветствую вас дорогие друзья!
В этой статье я вам расскажу о том, почему Contact Form 7 не отправляет письма и как решить проблему с отправкой писем для плагина Contact Form 7 и для всего WordPress сайта в целом.
На самом деле, проблема с отправкой почты для Contact Form 7 возникает очень часто. В первую очередь, это зависит от того на каком хостинге размещен ваш сайт, а так же от того, какие плагины у вас установлены. Ну и, собственно говоря, от самого плагина Contact Form 7, потому что иногда у него, все-таки, случаются глюки.
Для устранения проблемы с отправкой писем Contact form 7 нам нужно будет настроить отправку почты через SMTP. Для WordPress существует множество различных плагинов для реализации данной задачи, но я, в основном работаю с плагином WP Mail SMTP потому как он достаточно прост в настройке, и он меня еще не разу не подводил. Поэтому давайте установим этот плагин и посмотрим, как его нужно настраивать.
Копируем название плагина и переходим в админку нашего сайта. Здесь переходим в «Плагины» => «Добавить новый» и устанавливаем его так же, как и другие плагины. После его активации в разделе «Настройки» появится новый пункт, который называется «email».
- 1.Первое что нам нужно сделать — это заполнить поле «From Email». Сюда вы вставляете адрес вашего почтового ящика размещенного на сервисе Яндекс или Gmail.
Для решения проблемы c отправкой писем Contact form 7 я создала специальный почтовый ящик на Яндекс, поэтому в этом поле я указываю его.
- 2.Далее, в поле «From name» можете написать свое имя или название сайта либо оставить его пустым.
- 3.В графе «Mailer» должна быть выбрана опция «Send all WordPress email via SMTP».
- 4.В разделе «SMTP Options», в параметре «SMTP Host», вместо значения localhost прописываем smtp.yandex.ru.
- 5.Значение «SMTP Port» оставляем по умолчанию. Если вы будите использовать почтовый ящик Gmail, то параметры SMTP Host и SMTP Port будут отличаться.
- 6.В параметре «Encryption» указываем «Use TLS encryption».
- 7.В параметре «Authentication», ставим «Yes: Use SMTP authentication»
- 8.Теперь, в поле «Login» вам нужно ввести адрес почтового ящика и в поле «Password» — пароль к нему. Т.е., у вас отправка письма будет осуществляться как бы через ваш почтовый ящик на сервисе.
- 9.После того, как все настройки заданы, нажимаем на кнопку «Сохранить изменения».
Теперь нам нужно проверить, правильно ли мы все настроили. Для этого воспользуемся опцией «Send test email». В этом поле я укажу свой почтовый ящик на Яндекс и отправлю тестовое сообщение.
Здесь нам нужно будет ввести адрес почтового ящика, на который вам бы хотелось получать все ваши письма, заявки, уведомления с данного сайта. Это не обязательно должен быть почтовый ящик, который вы использовали в настройке, это может быть любой другой. Желательно, что бы этот email находился не на mail.ru, потому, что они ужесточают свои спам-фильтры, и все письма, которые отправляются в автоматическом режиме с какого-то сайта, либо какого-то сервиса могут попадать в спам. Поэтому, лучше использовать тот же Яндекс или Gmail.
После нажатия на кнопку «Send Test» мы увидим сообщение о том, что наше письмо было отправлено, после чего мы можем перейти в почтовый ящик и проверить, дошло ли оно.
Итак, я получила вот такое сообщение:
В тексте написано, что данное сообщение было сгенерировано плагином WP Mail SMTP. Вверху, в адресе отправителя, мы видим данные, которые указывали в настройке плагина.
То есть email, который я указала в настройках плагина, указывается в качестве отправителя.
Теперь если я попробую отправить сообщение с формы Contact Form 7, то оно будет успешно доставлено.
Данный плагин так же можно использовать в том случае, если у вас не только с Contact Form 7 не приходят письма, а в целом, почта с сайта WordPress не доходит на ваш email. То есть, в этом случае, вы можете настроить отправку через SMTP, и таким образом решить эту проблему.
Я сталкивалась с такими хостингами, у которых возможность отправки через SMTP активировалась только на каких-то более дорогих тарифных планах, либо за отдельную плату.
Конечно, на большинстве хостингов эта функция есть, проблем с ней ник каких не возникает. Но если вдруг у вас, при настройке отправки писем, ни чего не получается, то есть смысл написать в техподдержку вашего хостинга и уточнить, осуществляется ли у них отправка почты через SMTP и в чем могут выть вызваны возникающие ошибки, возможно это проблема самого хостинга.
Вы также можете посмотреть видео инструкцию по данной теме:
Что же, на этом у меня все. Надеюсь, эта статья была для вас полезна, и теперь у вас не будут возникать проблемы с отправкой писем как для Contact form 7, так и для всего сайта WordPress в целом. Пишите комментарии, подписывайтесь на мою рассылку и не забудьте подписаться на новости блога и мой канал на YouTube чтобы не пропустить ничего интересного.
С уважением Юлия Гусарь
impuls-web.ru
Принцип действия плагина Contact Form 7
Данная форма располагается на любой странице вашего сайта (нужно лишь скопировать строчку и вставить ее в нужное место). Посетитель сайта заполняет обязательные поля (к примеру, свое имя, e-mail, сообщение), и плагин через один почтовый ящик (назовем его «отправитель») посылает письмо на другой ящик («получатель»).
Тоесть, вы должны зарегистрировать 2 почтовых ящика – отправитель и получатель. Отправитель лучше создать в Яндекс почте, а получатель – это официальный ящик вашего сайта.
Настройка плагина Contact Form 7. Инструкция
1) Регистрируем ящик отправитель на Яндекс почте (любой, без разницы какой, его название не важно для работы плагина и не будет видно посетителям). Он будет служить перевалочным пунктом для писем.
2) Настраиваем контактную форму плагина Contact Form 7. Нажмите «Изменить» и далее «Шаблон формы». Вот пример, как она должна выглядеть с обязательными полями: имя пользователя, его почта, сообщение и кнопка «отправить»:
3) Вкладка «Письмо» отвечает за внешний вид писем, которые вы получаете.
Кому – адрес ящика получатель
От кого – [your-name] <адрес ящика отправитель>
Тема – [your-subject]
Тело письма – [your-email] [your-message]
Итак, вы получаете письмо, где будут указаны все заполненные поля формы обратной связи. На этом настройка плагина Contact Form 7 завершена.
Настройка плагина WP-Mail-SMTP. Инструкция
From Email – адрес ящика отправитель
From Name – к примеру, название вашей организации или ваше имя
Mailer – функция отправки писем. Выберите «Send all WordPress emails via SMTP»
SMTP Options
SMTP Host – для Яндекс почты smtp.yandex.ru
SMTP Port – для Яндекс почты 465
Encryption – Use SSL encryption
Authentication – Yes: Use SMTP authentication
Username – логин на вашей почте отправитель
Password – пароль на вашей почте отправитель
Настройка завершена. Сохраните изменения.
buxrabota.com
Здравствуйте!
Многие, у кого на сайте есть контактные формы, созданные с помощью плагина Contact Form7, обнаружили, что с недавнего времени с этих контактных форм перестали отправляться письма.
С такой же проблемой столкнулся и я на своих сайтах и на сайтах своих клиентов. При попытке отправить форму вращается значок отправки, а письмо не отправлялось.
В этой короткой статье я расскажу, как сделать, чтобы письма снова стали отправляться.
Прежде всего, я выяснил причину, по которой не отправлялись письма. Дело оказалось в самом плагине Contact Form 7. В версии 4.7 всё прекрасно работает, а при обновлении до версии 4.8 письма перестают отправляться. Я надеялся, что с выходом следующего обновления ошибка устранится, но и после обновления до версии 4.9 письма по-прежнему не отправлялись.
Самое простое решение, которое я нашёл в этой ситуации, – сделать откат плагина Contact Form7 до последней рабочей версии, то есть до версии 4.7. Сделать это можно с помощью специальных плагинов. Я покажу, как сделать откат с помощью плагина WP Rollback. Этот плагин очень прост в работе.
Устанавливаем плагин WP Rollback из репозитория WordPress и активируем его. Открываем в консоли раздел меню Плагины и видим, что рядом с каждым плагином появился дополнительный пункт Rollback.
Нажимаем на Rollback рядом с плагином Contact Form 7. Появляется окно с возможностью выбрать версию, до которой нужно сделать сброс. Выбираем версию 4.7 и жмём Rollback.
В появившемся окне опять нажимаем на Rollback. Плагин обновится. Не забываем активировать плагин. Заходим на страницу с контактной формой и пробуем отправить письмо.
Теперь всё работает. В чём на самом деле причины такого сбоя в работе плагина Contact Form 7 надо ещё разбираться. Если выясню в чём причина, то обязательно напишу. А пока можно сделать откат до версии 4.7 и спокойно работать.
Таким же образом можно делать откат и других плагинов, которые позволяют это делать (такая возможность предусмотрена не у всех плагинов).
Надеюсь, что статья была вам полезна. Спасибо за внимание!
aleksderk.ru
Contact form 7 — известный плагин для WP, который позволяет делать самые разные формы. Но иногда случается такое, что он перестает отправлять письма на указанный в его настройках почтовый адрес.
На самом деле — почти всегда Contact form 7 тут не при чем, а всему виной спам-фильтры почтовиков, потому что они считают ваше письмо мега-спамом такого уровня, что оно даже в папку «Спам» не падает, а просто убивается на подлете. И очень редко глючит сам сервер, а именно функция PHP — mail.
Итак, поехали исправлять.
Первым делом нужно проверить работает ли у вас на хостинге этот самый mail, для этого создаем на хостинге файл testmail.php с таким содержимым
<?php var_dump(mail("yourmail@server.com","Test","Test")); ?>
Вместо yourmail@server.com нужно конечно же написать свою почту, и файл залить туда, где вы смождете открыть его браузером
И запускаем его, перейдя по например адресу http://вашсайт/testmail.php
Если будет написано bool(true) — то значит все в порядке и почта УХОДИТ (но не доходит), если же будет написано что-то другое — то скопируйте это и пишите в ТП хостера.
Итак mail работает, но почта не доходит.
Первый вариант — это повысить уровень доверия почтового сервера в вашему домену, гуглите что такое dkim
и SPF и действуйте.
Второй вариант — это просто завернуть все сообщения с вашего сайта через SMTP, как обычный почтовый клиент.
Для этого зарегистрируйте новый почтовый ящик, например для Яндексе (или используйте свой) и установите на WP плагин https://ru.wordpress.org/plugins/easy-wp-smtp/. Вот скрин его настроек, я думаю все должно быть понятно
После заполнения учетных данных, можно сразу проверить их корректность, введя в эти поля
E-mail адрес, тему и сообщение соответственно.
После этого, если все корректно настроено — то письма будут доходить.
P.S. В Сети также пишут, что необходимо чтоб адрес почты указанный в Contact form 7 совпадал с адресом указанным в From Email Address и SMTP username — этот момент я не проверял, т.к. у меня он совпадал изначально
P.S.2 Можно взять любой другой плагин схожей функциональности, для этого нужно искать в репозитории плагинов вот так https://ru.wordpress.org/plugins/search/wp+mail+smtp/ — там даже на русском можно найти варианты, однако у меня заработал именно этот, с первыми двумя Contact form 7 так и не заработал.
reset.name
Будучи менеджером коммерческого отдела небольшой торговой компании, я выполнял задачу по отправке нескольких сотен писем постоянным и потенциальным клиентам. Базу формировали из открытых источников мы сами, предложение было реально интересным целевой аудитории. Возникла «неожиданная» проблема – часть писем стала возвращаться. Кроме того, начали приходить сообщения с указаниями кодов ошибки SMTP. Своего IT-специалиста в штате у нас не было, потому разобраться с проблемой я решил самостоятельно. О результатах этой работы, причинах возникновения таких ошибок и методах их решения расскажу в этой статье.
Как избежать ошибок при составлении и отправке писем
Причинами возникновения ошибок и, как следствие, неполучения сообщений могут служить разные факторы. Одни из них связаны с неправильным составлением исходящих писем самим пользователем, другие относятся к более глобальным программным настройкам со стороны получателя.
Самый простой способ это понять – отправить тестовое сообщение на свой ящик. Затем следует протестировать его отправку и получение, используя разные внешние почтовые сервисы: gmail, yandex, mail, rambler и другие. Если сообщение получено, следует ответить на него, проверив корректность исполнения команды «RE» вашим почтовым сервером и принятие ответа условным отправителем.
Довольно часто проблемы с попаданием писем в папку «Спам» или программной блокировкой на стороне получателя лежат в неверном оформлении ключевых полей. Особенно это касается массовых рассылок коммерческого характера. Для отправки большого количества однотипных сообщений как минимум потребуется выполнение следующих параметров настройки:
- выделенный IP-адрес с целью исключить блокировку на стороне сервера-ретранслятора или почтовой программы конечного получателя;
- криптографические подписи DKIM и SPF, помогающие подтвердить подлинность домена и минимизировать количество писем, воспринимаемых как спам.
Важно! В случае несоблюдения этих элементарных правил вы рискуете не только тем, что конкретное письмо не будет доставлено адресату. При многократных попытках отправки письма в большинстве почтовых программ в блок-лист попадет вся корреспонденция, отправляемая с вашего email, и даже корпоративный домен (@domain.***).
Некорректное использование бота для отправки писем может привести к блокировке отправителя и другим нежелательным последствиям. Даже если информация, которую вы отправляете потенциальным клиентам, реально интересна им, система спам-фильтрации может воспринять данную рассылку как вредоносную. Чтобы избежать этого, лучше всего воспользоваться услугами специализированных компаний.
В моей практике был случай, когда никак не удавалось добиться получения моей электронной корреспонденции одним из сотрудников компании «Лукойл». Письма я отправлял самые простые, используя корпоративный ящик. Только после того, как мой респондент обратился в IT-службу своего предприятия, выяснилось, что данный адрес находится в блэк-листе. Попал он туда из-за каких-то ошибок, допущенных моим предшественником. Понадобилось больше недели, чтобы адрес включили в «белый список». Все это время письма, высылаемые с личного mail@yandex.ru, доходили без проблем.
Полезно: Почему не приходят письма с сайта. Пример частного случая.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Положительные и отрицательные сообщения SMTP-сервера
SMTP (Simple Mail Transfer Protocol) — это протокол, используемый большинством почтовых программ для отправки электронных сообщений в сети интернет. Некорректное взаимодействие между серверами, индивидуальные настройки на уровне программного обеспечения и многие другие причины приводят к появлению ошибок. В этом случае письма не доходят до получателей, возвращаются обратно или просто «пропадают». При возникновении таких ситуаций отправитель получает сообщение о наличии конкретной ошибки, отражающей SMTP-код последнего отклика сервера.
Данные коды являются трехзначными, каждая его часть несет в себе определенную информацию, расшифровывающую причину сбоя.
Первая цифра комбинации содержит информацию о качестве доставки:
- сообщение доставлено («SMTP OK»);
- возникла неизвестная или временная проблема («SMTP unknown»);
- критическая ошибка («SMTP error»).
Существует четыре варианта значений для первой цифры кода:
- 2xx – положительный результат, есть возможность передачи следующей команды;
- 3xx – отложенный результат, необходимо осуществление дополнительных действий;
- 4xx – сообщение не принято, но проблема носит временный характер, и запрос может быть повторен через какое-то время;
- 5xx – категорический отказ выполнения команды, отправка запроса со стороны передающего сервера в том же виде невозможна.
Вторая цифра в коде сообщает о категории ответа:
- 0 – синтаксические ошибки;
- 1 – ответы на запросы информации;
- 2 – ошибки канала передачи;
- 3 и 4 – неизвестный тип ошибки;
- 5 – статус почтовой системы.
Третья цифра дает более расширенную информацию о значении, указанном во второй цифре SMTP-ответа.
Помимо цифровой комбинации, SMTP-сообщение может содержать дополнительную текстовую информацию.
Полную информацию о кодах, их компоновке и значениях можно найти в спецификациях RFC 5321 и RFC 1893.
Следует учитывать, что SMTP-message говорит об успешном или неудачном варианте доставки именно на уровне взаимодействия почтовых серверов. Положительный ответ вовсе не означает, что ваше письмо не попало в папку «Спам».
Читайте также
Виды почтовых сервисов
На программном уровне существует несколько видов обработки электронной почтовой корреспонденции. К первой группе относятся виртуальные сервисы, доступные чаще всего в бесплатном исполнении через интернет-соединение на сайте почтового сервера. Это всем известные ресурсы:
- Gmail/Google Suite (почта от Google.com);
- Yandex.ru;
- Mail.ru;
- Rambler.ru и другие.
Более подробную информацию о значениях ответов SMTP можно получить на сайтах популярных почтовых сервисов:
- Коды ошибок SMTP почтового сервиса Gmail (Google Suite) (support.google.com)
- Создание и отправка писем на сервисе Яндекс
- Ошибки отправки писем при использовании сервера и сервиса Mail.ru
Ко второй группе относятся почтовые клиенты – программы, обладающие более расширенным функционалом, чем виртуальные сервисы. Наиболее популярными и универсальными почтовыми клиентами для Windows являются:
- Opera Mail;
- Mozilla Thunderbird;
- Koma-Mail;
- SeaMonkey;
- The Bat!;
- Microsoft Outlook.
Принципы работы почтовых клиентов несколько отличаются от процесса обработки корреспонденции виртуальными серверами. При отправке сообщения программа отсылает его не напрямую конечному получателю, а ретранслирует через сервер-релей. Этот процесс осуществляется чаще всего с использованием протокола SMTP, а получение корреспонденции обычно происходит с помощью IMAP или POP.
Коды SMTP-ответов определяются стандартом. Администратор почтового сервера может создать собственные настройки, в том числе и в части кодировки ответов сервера. Особенно это касается локальных почтовых программ, установленных непосредственно на сервере какой-нибудь компании.
О вариантах выбора и способах создания корпоративных почтовых сервисов более подробно можно прочитать здесь: Что такое почтовый сервер и зачем он нужен.
Классификация отрицательных SMTP-сообщений. Способы решения проблем
Я настроил свою почтовую программу – локальный клиент (MS Outlook и т.п.) или бесплатную почту на gmail или yandex. Начинаю отправлять письма, но сталкиваюсь с различными проблемами, связанными с тем, что мои респонденты не получают направленную им корреспонденцию. Соответственно, на мой ящик приходят сообщения об ошибках в виде кодировок SMTP.
Сразу опускаю тот пакет сообщений, которые начинаются с 2хх и 3хх, так как они содержат информацию о том, что задача получения письма уже решена положительно либо получит такой статус в ближайшее время. Более подробно рассмотрим некоторые виды кодированных сообщений, начинающихся с 4хх и 5хх, т.е. отклики SMTP-сервера, которые сообщают о наличии проблем.
Почтовый сервер сообщил об ошибке 421
Значение: Service Not Available. Сервер недоступен: канал связи будет закрыт.
Возможные причины |
Варианты решения |
Неправильно заданы параметры SMTP-соединения |
Необходимо перепроверить настройки |
Брандмауэр блокирует IP-адрес сервера электронной почты |
Необходимо создать новое правило в брандмауэре |
Блокируется трафик через порт 25 |
Попробуйте в настройках учетной записи электронной почты сменить номер порта SMTP на 465 |
Проблема использования VPN |
Необходимо, чтобы провайдер услуги занес ваш почтовый сервер в белый список адресов VPN |
Данная ошибка возникает наряду с грейлистингом (Greylisting – «Серый список») при интенсивном использовании бесплатного SMTP-сервера, который лимитирует количество отправляемых сообщений в единицу времени. Для решения этой проблемы можно воспользоваться высоконагруженным SMTP-сервером. Чаще всего эта услуга является платной.
Получено сообщение с кодом 451
Значение: Requested action aborted: local error in processing. Требуемое действие прерывалось: ошибка в обработке.
Возможные причины |
Варианты решения |
Превышено количество допустимых подключений или лимит обмена сообщениями за отрезок времени, письма ждут отправки в очереди |
В настройках сервера увеличить лимит или задать ограничение не на количество подключений, а на количество писем на одного пользователя. Накопившуюся очередь писем можно отправить повторно командой «force send» |
Неправильно настроены MX-записи домена, из-за чего происходит неправильная маршрутизация писем |
Проверьте логи, конфигурационные файлы, МХ-записи и разрешения, внесите корректировки |
Устранение проблем с доставкой электронной почты для кода ошибок 451 4.7.500–699 (ASxxx) в Exchange Online. Электронная почта из доменов onmicrosoft.com ограничена и фильтруется для предотвращения спама.
Необходимо добавить настраиваемый домен.
Ошибка почтового сервера 452
Значение: Insufficient system resources. Запрашиваемое действие не выполнено: недостаточно места в системе.
Возможные причины |
Варианты решения |
На сервере получателя закончилось место, поэтому письмо не доставляется |
Чтобы в этом убедиться, достаточно попробовать осуществить отправку письма с другого сервера |
В сообщении присутствует текст «Out of memory». Это значит, что недостаточно места на вашем сервере |
Необходимо проверить количество отправляемых писем в очереди, наличие свободного места на диске и объем доступной памяти |
В Microsoft Exchange Server есть специальный компонент мониторинга доступных ресурсов Back Pressure, который отслеживает свободное место на диске, на котором хранятся очереди транспортной службы Exchange. При возникновении такой ошибки можно сделать следующее:
- очистить диск от ненужных файлов;
- отключить мониторинг Back Pressure (не рекомендуется);
- перенести транспортную очередь на другой диск достаточного объема.
Сервер сообщил об ошибке SMTP 550
Значение: Mailbox unavailable. Требуемые действия не предприняты: электронный ящик недоступен
Возможные причины |
Варианты решения |
Неверно указан email-адрес получателя |
Необходимо связаться с адресатом альтернативным способом и уточнить правильность написания адреса, а также убедиться, что он является действующим |
Система заражена вирусом, осуществляющим массовую рассылку писем с вашего адреса |
Провести полную проверку специализированной антивирусной программой |
На стороне вашего интернет-провайдера установлены ограничения на отправку исходящих сообщений |
Необходимо связаться с поставщиком интернет-услуг и получить консультацию по устранению данной проблемы |
Сервер получателя не работает |
Отправьте тестовое письмо на другой почтовый сервер. Свяжитесь с получателем и сообщите о проблеме |
Данная ошибка может возникнуть из-за настроек программы Антиспам на стороне получателя. Проверьте корректность оформления вашего письма и другие параметры, по которым ваше сообщение может быть отнесено к нежелательным.
Почтовый сервер ответил ошибкой 571
Значение: SMTP Protocol Returned a Permanent Error 571 xxx@mail.ru prohibited. We do not relay/Spam message rejected. Ошибка на стороне получателя почты.
Возможные причины |
Варианты решения |
Ваш IP-адрес заблокирован на стороне конечного получателя спам-фильтром, антивирусом или файрволом |
Данную проблему может решить только администратор сети получателя, исключив ваши идентификационный данные из списка блокировки или добавив их в «белый список» |
Неверные учетные данные ретранслятора. У вас нет разрешения на отправку электронной почты через сервер, который находится между вами и получателем |
Обратитесь к администратору данного ресурса для изменения настроек |
У IP отправителя нет RDNS |
Проверьте настройки получения писем и разрешения для доменов-отправителей |
Как я уже писал выше, разные почтовые серверы накладывают свои ограничения на прием и отправку сообщений. Код 571 в Google Suite расшифровывается следующим образом: «Действующая политика запрещает отправку этого сообщения». Письмо может содержать защищенные или конфиденциальные данные – номера кредитных карт и т.п. Или политика администрирования запрещает отправку определенными пользователями сообщений адресатам вне установленной группы.
Сертификат почтового сервера недействителен
Обычно с таким сообщением приходится сталкиваться пользователям, у которых настроен Microsoft Exchange Server/MS Outlook. В данной ситуации самое простое решение – обновить сертификат.
Проверка доступности почтового сервера программным методом
В данной статье описаны лишь некоторые варианты ошибок, которые могут возникнуть при отправке электронных сообщений. Полный перечень достаточно объемен и во многом зависит от настроек конкретного сервера как на стороне отправителя, так и получателя. Некоторые из ошибок могут быть легко устранены обычным пользователем, другие под силу лишь опытным администраторам.
Одним из способов предупреждения появления ошибок является онлайн-проверка доступности почтового сервера с помощью бесплатных инструментов:
- https://mxtoolbox.com
- https://www.ultratools.com
- http://mail2web.com
Эти сервисы пробуют подключиться к почтовому серверу по SMTP, подтверждают, что у него есть запись обратной зоны DNS, и замеряют время отклика. С их помощью можно диагностировать некоторые ошибки службы почтовых серверов или проверить, не занесен ли данный ресурс в черные списки из-за спама.
Прочитав эту статью, обратите внимание на то, как настроен ваш почтовый сервер на получение сторонних писем по SMTP-протоколу. Быть может, в данный момент ваш антиспам или локальная политика фильтрации входящих сообщений блокирует получение очень важного и нужного для вас месседжа? Проверьте сами или обратитесь к системному администратору. Если ошибку с SMTP никак не удается решить, то попробуйте обратиться в службу поддержки почтового сервера.
При использовании сайта на 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% случаев должны помочь решить проблему. Если у вас осталась ошибка, то прошу связаться с нами любым доступным способом, указанным ниже, либо на странице контакты
В этой статье мы расскажем вам о том, где смотреть причины ошибки неотправленной почты в Битриксе. Рассмотрим три основных мест, откуда можно найти ошибку отправки писем.
Проверка таблицы очереди писем
Идем в административную панель Битрикса по пути: Настройки / Производительность / Таблицы. Ищем таблицу b_event и проваливаемся по ссылке.
Именно в эту таблицу попадают письма с сайта в очередь, а затем отправляются на хитах или на агентах.
На открывшейся странице можем отыскать сообщение, которое не отправилось. Проматываем в самый конец к колонке SUCCESS_EXEC – это колонка записывает состояние отправки письма.
Варианты статуса отправки (SUCCESS_EXEC):
Y – означает, что письмо было успешно отправлено
N – говорит о том, что событие еще не обработано и письмо не отправлено. В этом случае стоит полную проверку сайта и проверить настройки dbconn.php. Проверить корректность настройки почтовых шаблонов и их привязки к сайтам.
F – сообщение не было отправлено. Необходимо проверить логи сервера или хостинга.
0 – не активен или отсутствует почтовый шаблон (Настройки / Настройки продукта / Почтовые шаблоны)
Проверка системы
Проверка системы расположена на странице Настройки / Инструменты / Проверка системы. В проверке уже встроен инструмент, который проверяет возможность отправки письма с помощью стандартной PHP функции mail. Этаки быстрый проверяльщик работы почты.
Если здесь уже возникает ошибка, то проблему стоит идти смотреть в логи сервера.
Проверка логов сервера
Если ошибка ошибка идет глубже и у вас VM Bitrix, идем в консоль сервера по пути /home/bitrix/ и ищем логи с префиксом .msmtp_ (по умолчанию). Смотрим и ловим ошибки в этом файле. Логи лучше просматривать с помощью утилиты mc.
Сама конфигурация почтовых настроек расположена в файле /home/bitrix/.msmtrpc
Если письма в Битриксе отмечены как успешно отправленные, но письмо не пришло и в логах отсутствует какая-либо информация – следует обратить внимание на логи в /var/log/. Там отобразится ошибка, которая возвращается функцией mail.
Проверить возможность отправки также можно с помощью консольных команд (но в данном случае будет использоваться отправитель по умолчанию – default)
> php -a
> mail('test@example.com', "Test", "Test message");
> exit
Если произойдет ошибка при отправке, то сообщение будет у вас на экране.
Ошибки
Частая ошибка – это когда в письмах отправителем указан адрес отличимый от названия аккаунта (поле FROM). Поэтому задайте в настройках сайта нужный адрес или в почтовых шаблонах в поле «От кого». В этом случае, если требуется, чтобы человек мог ответить на другую почту, то можете указать электронную почту в качестве обратного адреса в почтовом шаблоне.
Другая ошибка – это отсутствие настроек для отправителя по умолчанию. Необходимо внести корректные настройки адреса отправителя (указать tsl, метод авторизации и т.п.)
На этом все, надеюсь статья была вам полезна. Если у вас возникнут вопросы, задавайте в комментарий.
В письме в поле кому числится получатель undisclosed-recipients
Чтобы отображался e-mail получателя, в настройках главного модуля 1С-Битрикс необходимо активировать пункт «Дублировать E-Mail адрес в заголовок» во вкладке «Почта»
Как проверить работу сокетов?
Выполните через командную PHP-строку следующий код:
$fp = fsockopen("ssl://smtp.mail.ru", 465, $errno, $errstr, 30); if (!$fp) { echo "Error: $errstr ($errno)n"; }else { echo "Connected"; } fclose ($fp);
Если в результате вы получили «Connected», значит все работает.
Если в результате вы получили «Error: (0)», значит у вас не настроена поддержка OpenSSL.
Как узнать актуальные настройки для подключения?
Настройки для Яндекс — https://yandex.ru/support/mail/mail-clients.html
Настройки для Mail.ru — https://help.mail.ru/mail-help/mailer/popsmtp
Настройки для Gmail.com — https://support.google.com/mail/answer/7126229?hl=ru
Не отправляются сообщения
- Проверьте наличие необходимого кода в файле /bitrix/php_interface/init.php или /local/php_interface/init.php, смотря какой именно вы используете. Также проверьте, чтобы не было другого вызова фукнции custom_mail().
- Проверьте правильность указанных настроек для почтового ящика.
- Включите модуль, если не включен.
- Отправьте тестовое письмо.
- Проверьте систему на наличие ошибок. Если настроено выполнение агентов на cron и он не срабатывает, то сообщения не будут отправлены до тех пор, пока не будет должным образом настроено выполнение файла cron_events.php.
Ошибка при проверке системы «Ошибка! Есть ошибки при отправке системных почтовых сообщений, число неотправленных сообщений: N»
Выполните через командную PHP-строку следующий код:
$result = CEvent::CheckEvents();
var_dump($result);
Если все ок, то должен выдать «string(0) «»» иначе может отобразить ошибку, которая мешает отправке сообщений.
У меня не происходит авторизация через Gmail, что делать?
Разрешите доступ небезопасным приложениям https://support.google.com/accounts/answer/6010255?hl=ru
Подойдет ли модуль для Email-маркетинга?
Наше решение полностью совместимо с модулем email-маркетинга и рассылок. Но по опыту, большую часть писем почтовый сервис помечает как спам и не отправляет получателю, если для отправки используются обычные почтовые ящики или корпоративная почта. Для массовых рассылок мы советуем использовать специализированные сервисы для рассылок, например SendPulse.
Кириллические домены для почты
Мы не рекомендуем использовать домены в зоне .рф для организации отправки почты через smtp с сайта.
Собственный сервер исходящей почты
Работа модуля гарантируется только с основными почтовыми сервисами: Яндекс, Gmail и Mail.ru. Если вы используете собственный сервер отправки, то внимательно указывайте данные для подключения.
Яндекс.Почта Пароль не был принят сервером как верный Ошибка авторизации (пароль верный)
Модуль не поддерживает XOAUTH2 авторизацию. Скорее всего, у вас включена авторизация через пароли приложений.
Отключить данную опцию можно на странице управления паролями https://passport.yandex.ru/profile/access
Не работает на Виртуальной машине BitrixVM
Не рекомендуется использовать модуль, если у вас Виртуальная машина BitrixVM. Для отправки почты через smtp, в BitrixVM присутствует соответствующая настройка https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=37&CHAPTER_ID=08853
На почту приходит html-код
В настройках главного модуля, вкладка «Почта и СМС», отключите опцию «Генерировать текстовую версию для html-писем»