Contact Form 7 не работает и akismet блокирует письма

Плагин обратной связи

Столкнулся с забавной проблемой. При отправке сообщения через форму обратной связи (она у меня реализована через плагин Contact Form 7), письмо не отправлялось, а плагин отдавал ошибку Ошибка отправки сообщения. Попытайтесь позже или обратитесь к администратору сайта. Первым дело конечно полез смотреть в настройки формы. Оказалось, что данную ошибку скрипт отправляет в случае если akismet блокирует сообщения, которые по его мнению являются спамными.

Интересно…

Про плагин contact form 7 вы можете прочитать в моей статье Плагин для обратной связи на wordpress

Перед тем как рыть дальше, увидел, что последние обновления плагина внесли коррективы в шорткод который вставляется на нужную страницу и собственно формирует на ней эту самую форму. Было так:

[contact-form-7 404 "Not Found"]
А теперь стало так:

[contact-form-7 404 "Not Found"]
Поменял, и о чудо, форма заработала. Большинству из вас этого уже достаточно. Форма будет работать и отправлять письма. Но мне стало интересно, что же все таки делает акисмет и как его алгоритмы подключить к проверке отправленных сообщений, через Contact Form 7. Признаюсь честно, спам через эту форму, меня немного бесил, каптча спасает но спам не такой большой, чтобы её включать. Ответ получил у разработчиков самого плагина.

Для того, чтобы использовать akismet, естественно он должен уже быть настроен в вашем блоге. Теперь достаточно изменить некоторые текстовые поля в самой форме (отредактирует её).

akismet:author
Добавьте его в поле которое принимает имя отправителя сообщения.
Пример:

[text* your-name akismet:author]
akismet:author_email
Добавьте его в поле, которое принимает емейл отправителя.
Пример:

[email* your-email akismet:author_email]
akismet:author_url
Добавьте этот код в поле, куда отправитель вставляет адрес URL.
Пример

[text your-url akismet:author_url]
Кода данные поля, будут прописаны, и сама фора сохранена. Данные этих форм, будут передаваться на обработку akismet и соответственно блокироваться по необходимости. Пока интеграция реализована на этом уровне. Добавка кода akismet в другие поля, не вызвала никакого эффекта (к примеру в поле темы или самого текста сообщения).

Теперь к 3 вариантам ответа Contact Form 7 (маркированных цветом), добавился еще один — оранжевый. Именно его цвет и текст дает понять, что сообщение не прошло проверку через akismet. Напомню, что другие поля означают соответственно успешность отправки письма, ошибку при вводе каптчи, и ошибку в работе самого скрипта. Картинка ниже:

Теперь проверим работу плагина. Введём в поле Ваше имя, текст «test-123». Естественно, получим ошибку.

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

Добавить комментарий

Ваш e-mail не будет опубликован.

3 × один =

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>