Спам в формах WordPress и Contact Form 7
WordPress — самая популярная CMS в мире, поэтому спам-боты знают её формы наизусть. Собрали способы защиты от простых к надёжным с учётом российских реалий.
Содержание
Коротко
- Формы WordPress и Contact Form 7 у спамеров известны наизусть.
- Скрытое поле, стоп-слова и отключение ненужного снимают основную часть спама.
- Остальное закрывает антибот с проверкой отправителя на сервере — без капчи.
Почему WordPress так любят спамеры
Адреса форм, комментариев и регистрации на WordPress стандартные, а Contact Form 7 стоит на миллионах сайтов. Боту не нужно разбираться в вашем сайте — он отправляет запросы по известным шаблонам.
Что умеет Contact Form 7
- Интеграции с капчами. CF7 поддерживает reCAPTCHA и Cloudflare Turnstile через раздел «Интеграция». Для российских сайтов это зарубежные сервисы — с вопросами передачи данных и доступности.
- Akismet. Фильтр спама от разработчиков WordPress, работает по базе спамеров. Для коммерческих сайтов платный.
- Стоп-слова. В «Обсуждение» можно задать список запрещённых слов — подходит против рекламного спама.
Скрытое поле
Плагины-«ловушки» (honeypot) добавляют в форму поле, невидимое человеку. Бот его заполняет — и заявка отклоняется. Бесплатно, не мешает людям, отсекает простых ботов. Против ботов в реальном браузере не помогает.
Комментарии и регистрация
- Если комментарии не нужны — отключите их в «Настройки → Обсуждение».
- Включите ручное одобрение первых комментариев.
- Отключите регистрацию, если на сайте нет личного кабинета.
- Закройте XML-RPC, если не пользуетесь им: через него часто перебирают пароли.
Антибот без капчи
Подключение nbots на WordPress — одна строка кода в <head>: через тему или плагин для вставки кода в шапку. Дальше:
- в кабинете видно, кто из посетителей бот и почему;
- Метрика, подключённая через nbots, считает только людей;
- для форм в обработчик добавляется проверка отправителя — боты отсекаются на сервере, люди не видят капчу. Пример для PHP есть в кабинете.
Сравнение капч и защиты без капчи — в статье «Капча для сайта».
Частые вопросы
Как защитить Contact Form 7 от спама?
Включить одну из встроенных интеграций (reCAPTCHA или Turnstile), добавить скрытое поле через плагин и стоп-слова. Без капчи — подключить антибот с проверкой отправителя на сервере.
Почему капча в CF7 не спасает от спама?
Продвинутые боты решают капчу через сервисы распознавания или работают в реальном браузере. Капча отсекает массовый простой спам, но не всех.
Как вставить код антибота в WordPress?
Через настройки темы, если там есть поле для кода в head, или через плагин для вставки кода в шапку сайта.
Какой плагин защиты от спама выбрать для WordPress?
Для начала — плагин со скрытым полем для Contact Form 7 и встроенные стоп-слова. Для коммерческого сайта с рекламой — антибот, который работает и на формах, и на статистике.
Нужен ли Akismet российскому сайту?
Akismet хорошо фильтрует комментарии, но для коммерческих сайтов он платный, а данные уходят на зарубежные серверы.
Как закрыть XML-RPC в WordPress?
Плагином безопасности или правилом на сервере, запрещающим доступ к xmlrpc.php. Перед этим убедитесь, что им не пользуются мобильное приложение или публикация из сервисов.
Почему спам в комментариях не прекращается после капчи?
Часть ботов решает капчу через сервисы, а часть отправляет запросы напрямую в обход формы. Помогают ручная модерация и проверка на сервере.