Формы обратной связи на WordPress ставят почти на каждый сайт, но реально работает не сам конструктор, а то, что происходит после нажатия кнопки «Отправить». Я веду клиентские сайты на WordPress с 2018 года, и самая частая проблема не в том, какой плагин выбрать, а в том, что заявка уходит в спам, теряется на хостинге или вообще нигде не сохраняется. Разберу конкретные плагины, куда у каждого из них уходят данные и как проверить, что форма реально работает, а не просто красиво выглядит.
Зачем разбираться, куда уходят данные из формы обратной связи
WordPress по умолчанию отправляет почту через функцию PHP mail(), и именно здесь чаще всего рвётся цепочка. Хостинг может блокировать эту функцию, письмо может не пройти проверку SPF и DKIM у получателя и упасть в папку «Спам», а иногда сообщение исчезает вообще без ошибки в логах. На практике из десяти клиентских сайтов на обычном shared-хостинге у трёх-четырёх в первый месяц работы были проблемы с доставкой: клиент был уверен, что форма не работает, хотя посетители её исправно заполняли.
Первый вопрос при выборе плагина не «какой красивее», а «через что уходит письмо и где хранится копия заявки». Плагин формы обратной связи для WordPress должен решать обе задачи сразу: собирать данные с сайта и гарантированно доносить их до менеджера, будь то почта, CRM или Telegram.
Contact Form 7: бесплатная форма обратной связи для WordPress
Contact Form 7 стоит почти на трети сайтов WordPress, где вообще есть контактная форма. Минус у него один, но принципиальный: он использует стандартный wp_mail(), и без дополнительной настройки SMTP письма у части хостингов будут теряться или падать в спам. Рядом с ним всегда ставлю WP Mail SMTP или Post SMTP и подключаю почту через API, например Mailgun, SendPulse или почтовый сервис на своём домене, это убирает потери почти до нуля.
Сам Contact Form 7 не хранит заявки в базе данных: после отправки письма данные никуда не сохраняются. Для локального архива нужен отдельный плагин Flamingo (тоже бесплатный), который записывает каждую отправку в свою таблицу в базе WordPress. Без него, если письмо потерялось, восстановить заявку неоткуда.
Бесплатный материал
🎁 Полезный скрипт в подарок
Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.
Без спама. Отписка в 1 клик.
WPForms, Gravity Forms и Forminator: платные конструкторы форм для WordPress
Если нужен визуальный конструктор, условная логика полей и готовые интеграции без программирования, смотрю в сторону платных решений.
| Плагин | Бесплатная версия | Платная версия, от | Хранение заявок в базе | Готовые интеграции |
|---|---|---|---|---|
| Contact Form 7 | да, весь функционал | нет | только через Flamingo | через сторонние плагины |
| WPForms | да, с ограничениями | 49 $ в год | да, из коробки | Zapier, CRM, платёжные сервисы |
| Gravity Forms | нет | 59 $ в год | да, из коробки | Zapier, Salesforce, вебхуки |
| Forminator | да, широкий набор полей | условно бесплатный | да, из коробки | ограниченный набор |
Цены указаны у разработчиков плагинов и не имеют отношения к моим услугам, это ориентир по рынку, если решите ставить и настраивать платный конструктор самостоятельно. На практике для простого «напишите нам» хватает бесплатной версии любого из этих плагинов, платная нужна, когда добавляется многошаговая форма, приём файлов или условная логика с десятком веток.
Куда физически попадают данные после отправки формы
У любой формы обратной связи на WordPress три реальных маршрута для данных.
- Почта: письмо приходит менеджеру на ящик, самый ненадёжный канал без настроенного SMTP.
- База данных: запись сохраняется в таблицах WordPress, у WPForms и Gravity Forms в разделе «Entries», у Contact Form 7 через Flamingo, и это единственный способ восстановить заявку, если письмо не дошло.
- Вебхук во внешнюю систему: данные сразу летят в CRM, таблицу или мессенджер, минуя почту вообще.
Третий вариант использую чаще всего на проектах с реальным потоком заявок. Отправку с WPForms можно завести через встроенный вебхук на адрес вроде https://n8n.example.com/webhook/wpforms, там в n8n разложить по условиям (новая заявка, повторный клиент, похоже на спам) и раскинуть дальше: часть в amoCRM, часть уведомлением в Telegram-бот, написанный на aiogram, чтобы менеджер видел заявку сразу в мессенджере, а не проверял почту раз в час.
Если план собирать заявки в общую таблицу для отдела продаж, не стоит тащить персональные данные клиентов в Google Таблицы или Airtable: по 152-ФЗ обработка данных граждан РФ должна идти на серверах в России, и это касается заявки с именем и телефоном точно так же, как базы клиентов интернет-магазина.
Спам и лишние заявки: что реально помогает
На одном из проектов до настройки защиты форма собирала около 150-200 спам-заявок в сутки: боты просто пробегали по всем контактным формам сайта одна за другой.
- Honeypot-поле, скрытое поле, которое человек не видит и не заполняет, а бот заполняет всегда. Есть в WPForms и Forminator из коробки, в Contact Form 7 добавляется вручную.
- Google reCAPTCHA v3, работает в фоне, не показывает пользователю картинки с грузовиками и светофорами, но снижает поток автоматических отправок.
- Ограничение частоты отправок с одного IP, спасает от долбёжки скриптом, а не человеком.
После связки honeypot и reCAPTCHA v3 спам на этом же сайте упал до 2-3 заявок в неделю, и это были уже не боты, а реальные, хоть и нецелевые обращения.
Интеграция формы с оплатой, доставкой и CRM
Форма обратной связи часто не отдельная сущность, а часть более сложного процесса: заявка должна дойти до CRM, а иногда сразу спровоцировать оплату или расчёт доставки.
На магазинах на WooCommerce встречал такую задачу: клиент оставляет заявку на товар не через корзину, а через простую форму, и нужно тут же выставить предоплату через эквайринг T‑Bank, не заводя полноценный заказ. Это уже не настройка плагина, а доработка на PHP, готовые конструкторы форм такой сценарий не покрывают.
Похожая история с доставкой: если после заявки нужно сразу показать стоимость до города по данным СДЭК, обычный конструктор форм отдаёт только текстовое поле «Город», а расчёт тарифа приходится подключать отдельным запросом к API СДЭК на стороне сервера.
Когда типовой плагин не тянет сценарий с оплатой, доставкой или связкой из нескольких CRM, проще заказать точечную доработку, чем собирать это из десятка надстроек к конструктору форм, для таких задач есть услуга разработки и интеграций на WordPress под конкретный процесс, а не универсальный шаблон.
Частые вопросы
Какой плагин формы обратной связи выбрать для WordPress, если сайт небольшой?
Для небольшого сайта с редкими заявками хватает Contact Form 7 вместе с WP Mail SMTP и Flamingo, это бесплатно и закрывает базовый сценарий «имя, телефон, сообщение». Если сразу нужна условная логика полей или приём файлов без доработки кода, проще сразу взять бесплатную версию WPForms, она ближе к готовому решению из коробки.
Почему заявки с формы обратной связи не приходят на почту?
Чаще всего причина в одном из трёх мест: хостинг блокирует функцию PHP mail(), у почтового домена нет настроенных SPF и DKIM записей, из-за чего письмо падает в спам, или в настройках плагина указан неверный адрес получателя. Проверить стоит и папку «Спам», и раздел с сохранёнными заявками в самом плагине (Entries у WPForms и Gravity Forms или список во Flamingo у Contact Form 7), если запись там есть, а письма нет, дело точно в доставке почты, а не в форме.
Нужна ли платная версия плагина форм для WordPress?
Не всегда. Платная версия нужна, если требуется многошаговая форма, приём оплаты, интеграция с конкретной CRM без вебхуков или условная логика с большим числом веток. Для одной контактной формы «оставить заявку» бесплатной версии почти любого из перечисленных плагинов достаточно.
Как проверить, что заявки с сайта реально сохраняются, а не только уходят на почту?
Отправьте тестовую заявку сами и проверьте раздел с сохранёнными записями плагина (Entries у WPForms и Gravity Forms, список во Flamingo у Contact Form 7). Если используете вебхук на внешнюю систему, посмотрите логи запросов в этой системе, например в n8n есть отдельная история выполнения каждого вебхука с телом запроса, по которой видно, дошли данные и в каком виде.