Если в индексе появляются страницы поиска, архивы автора, служебные URL плагинов или дубли с параметрами, часто проблема не в «плохом SEO», а в том, что robots.txt либо отсутствует, либо настроен слишком общо. В WordPress это особенно заметно на сайтах с плагинами для поиска, фильтрации, комментариев, AMP, языковых версий и внутренней навигации.
Ниже разберём, какие разделы реально стоит закрывать, как сделать это без поломки индексации важных страниц и как проверить, что поисковики увидели изменения.
Какие симптомы указывают на проблему с robots.txt
Сначала стоит убедиться, что речь именно о robots.txt, а не о мета-теге noindex, каноникалах или дублях в карте сайта. Типичные признаки:
- в поиске всплывают URL вида
/page/2/,?s=,/author/,/feed/; - в отчётах краулера много служебных страниц, которые не должны индексироваться;
- в Google Search Console есть обход URL, которые не несут ценности, но продолжают сканироваться;
- на сайте есть фильтры, сортировки или внутренний поиск, и они создают десятки вариаций адресов.
Важно: robots.txt не удаляет страницу из индекса сам по себе. Он только ограничивает обход. Если URL уже в индексе, одного запрета в robots.txt может быть недостаточно.
Что именно закрывать, а что не трогать
В WordPress обычно имеет смысл ограничивать доступ к служебным и техническим разделам, но не к публичным страницам записей, рубрик и страницам товара, если они используются как посадочные. Базовый принцип простой: закрываем то, что не должно участвовать в поиске и не несёт самостоятельной ценности.
Чаще всего закрывают
- внутренний поиск:
/search/и URL с параметром?s=; - архивы автора на сайтах с одним автором;
- служебные фиды:
/feed/и варианты RSS; - страницы пагинации архивов, если они создают шум и не нужны в поиске;
- служебные пути плагинов, если они доступны публично и не должны сканироваться.
Что лучше не закрывать без проверки
- CSS и JS, которые нужны для рендеринга страницы;
- медиафайлы, если они дают органический трафик;
- страницы пагинации, если у вас большой каталог контента и они реально полезны для обхода;
- разделы, которые уже закрыты через
noindexи каноникал — дублировать запрет без причины не обязательно.
Диагностика: как понять, что именно индексируется лишнее
Перед правкой robots.txt проверьте, какие URL реально попали в обход. Вручную это можно сделать через поиск по сайту и отчёты Search Console, а технически — через краулер или хотя бы список URL из логов сервера.
Минимальный чек-лист диагностики:
- откройте
/robots.txtв браузере и проверьте, что файл вообще отдаётся; - посмотрите, нет ли в нём конфликтующих правил, например двух блоков
User-agent: *с разными директивами; - проверьте, не закрыт ли случайно
/wp-content/uploads/или/wp-includes/вместе с нужными ресурсами; - сравните список лишних URL с реальными шаблонами: поиск, архивы, фиды, параметры фильтров;
- если сайт на кэше или CDN, убедитесь, что robots.txt не отдаётся старой версией.
Пошаговая настройка robots.txt в WordPress
Самый безопасный путь — не редактировать файл наугад, а задать понятные правила и потом проверить ответ сервера. Если у вас уже есть физический файл robots.txt в корне сайта, WordPress его не перезапишет автоматически.
Шаг 1. Сделайте резервную копию текущего файла
Если robots.txt уже существует, сохраните его содержимое отдельно. Это особенно важно, если там есть правила для картинок, CDN или нестандартных поддоменов.
Шаг 2. Добавьте только нужные директивы
Для типового WordPress-сайта можно начать с аккуратного набора правил. Ниже пример, который закрывает поиск, фиды и некоторые служебные URL, но не трогает публичный контент.
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /?s=
Disallow: /search/
Disallow: /feed/
Disallow: /comments/feed/
Disallow: /author/
Disallow: /trackback/
Disallow: /tag/
Sitemap: https://example.com/sitemap_index.xmlЭтот пример не универсален. Например, закрывать /tag/ стоит только если теги на сайте не используются как полноценные посадочные страницы. Если теги дают трафик, лучше оставить их открытыми и навести порядок в контенте.
Шаг 3. Если нужно, управляйте robots.txt через WordPress-хук
Когда файл не хочется держать вручную, robots.txt можно модифицировать через фильтр robots_txt. Это удобно, если правила зависят от окружения или вы хотите хранить логику в теме или мини-плагине.
<?php
add_filter( 'robots_txt', function( $output, $public ) {
$lines = array();
$lines[] = 'User-agent: *';
$lines[] = 'Disallow: /wp-admin/';
$lines[] = 'Allow: /wp-admin/admin-ajax.php';
$lines[] = 'Disallow: /?s=';
$lines[] = 'Disallow: /search/';
$lines[] = 'Disallow: /feed/';
$lines[] = 'Sitemap: ' . home_url( '/sitemap_index.xml' );
return implode( "\n", $lines ) . "\n";
}, 10, 2 );Такой подход полезен, если сайт разворачивается на нескольких доменах или у вас staging/production с разными sitemap. Но если вы не контролируете кэширование и деплой, ручной файл иногда проще и надёжнее.
Сравнение подходов: файл, код или SEO-плагин
| Подход | Когда подходит | Минус |
|---|---|---|
Файл robots.txt в корне | Нужен простой и прозрачный контроль | Легко забыть обновить после изменений |
Фильтр robots_txt | Правила зависят от логики сайта | Нужно следить за темой, плагином и кэшем |
| SEO-плагин | Нужна правка без доступа к серверу | Не все плагины одинаково гибкие, возможны конфликты настроек |
Если на сайте уже стоит SEO-плагин, проверьте, не генерирует ли он robots.txt сам. Дублирование правил в плагине и в физическом файле часто приводит к путанице: вы меняете одно место, а поисковик видит другое.
Проверка результата после внедрения
После правки не ограничивайтесь открытием файла в браузере. Проверьте ответ сервера и то, как его видит поисковая система.
- Откройте
https://ваш-домен/robots.txtи убедитесь, что отдаётся актуальный текст. - Проверьте HTTP-статус: должен быть
200 OK, а не редирект на HTML-страницу. - В Search Console используйте проверку robots.txt, если она доступна в вашем аккаунте и интерфейсе.
- Протестируйте несколько URL вручную: поиск, архив автора, фид, служебный путь.
- Через несколько дней посмотрите, снизилось ли количество обхода ненужных страниц в отчётах.
Если у вас есть доступ к серверу, полезно проверить ответ через curl:
curl -I https://example.com/robots.txt
curl https://example.com/robots.txtПервой командой вы увидите статус и заголовки, второй — фактическое содержимое. Это помогает быстро поймать ситуацию, когда CDN или кэш отдают старую версию.
Частые ошибки и как их исправить
Закрыли слишком много
Самая неприятная ошибка — запретить доступ к папкам, которые нужны для корректного рендеринга. Если после правки ухудшились сниппеты или страницы стали хуже отображаться в проверке URL, проверьте, не закрыты ли CSS, JS или изображения.
Ожидали, что robots.txt удалит URL из индекса
Не удалит. Если страница уже в индексе, обычно нужен другой набор действий: noindex, каноникал, удаление ссылки из sitemap, а иногда и возврат 404 или 410 для реально ненужных адресов.
Оставили конфликтующие правила
Если в файле есть несколько блоков для User-agent: *, поисковик может интерпретировать их не так, как вы ожидали. Лучше держать один понятный блок и не плодить дубли.
Забыли про кэш
На сайтах с серверным кэшем, плагином кэширования или CDN robots.txt может обновляться не сразу. После правки очистите кэш и проверьте файл в режиме инкогнито и через curl.
Закрыли URL, которые уже дают трафик
Например, теги или архивы автора могут быть полезными посадочными страницами. Перед запретом посмотрите, есть ли у них показы и переходы. Если есть, сначала исправьте структуру, заголовки и дубли, а не рубите доступ целиком.
Практические советы по безопасности и производительности
robots.txt не защищает от атак и не скрывает чувствительные данные. Если в папке лежит что-то действительно приватное, его нужно убирать на уровне доступа, а не надеяться на запрет для роботов.
Для производительности полезно:
- не добавлять в robots.txt лишние директивы без задачи;
- не закрывать ресурсы, нужные для рендеринга страницы;
- держать sitemap в актуальном состоянии и не включать туда URL, которые вы запрещаете к обходу;
- проверять, не создаёт ли плагин поиска или фильтрации новые служебные URL после обновления.
Если вам нужен не только robots.txt, но и системная чистка дублей, архивов и служебных страниц, удобно смотреть в сторону инструментов уровня Clearfy Pro: он помогает закрывать типовые SEO-дыры и убирать лишнее без ручного перебора каждого шаблона. Подробности можно посмотреть здесь: Clearfy Pro.
Главная проверка простая: если после настройки поисковик перестал тратить обход на мусорные URL, а важные страницы остались доступны и индексируются нормально, robots.txt настроен в правильную сторону. Если же вы видите падение в индексации нужных страниц, откатывайте изменения и ищите конфликт не в одном файле, а в связке robots.txt, sitemap, canonical и кэша.