Если сайт на WordPress начал тащить в индекс служебные URL, не стоит сразу закрывать всё подряд. В robots.txt легко переборщить: можно случайно спрятать CSS, JS, архивы, изображения или вообще важные разделы. Ниже — рабочий сценарий, когда нужно аккуратно настроить файл, не ломая обход сайта поисковиками.
Что именно обычно идёт не так
Проблема чаще всего не в самом robots.txt, а в его содержимом. На WordPress нередко встречаются такие ошибки:
- закрывают
/wp-content/целиком, а потом поисковик не видит стили и скрипты; - добавляют слишком общий
Disallow: /для всех роботов и потом забывают снять; - путают
robots.txtиnoindex, ожидая, что файл уберёт уже проиндексированные страницы; - закрывают служебные URL, но оставляют открытыми дубли с параметрами;
- редактируют файл в плагине, который кэширует вывод или подменяет содержимое.
Диагностика перед правкой
Сначала проверьте, что именно вы хотите решить: уменьшить мусор в обходе, убрать служебные URL из индекса или ограничить доступ к приватным разделам. Для каждой задачи инструмент разный. robots.txt управляет обходом, но не гарантирует удаление из индекса, если страница уже известна поиску.
Быстрый чек-лист диагностики:
- откройте
https://example.com/robots.txtв браузере; - проверьте, нет ли там лишних
Disallowдля/wp-content/,/wp-includes/или всего сайта; - сверьте файл с фактической структурой сайта: есть ли у вас XML-карта, служебные страницы, поиск по сайту, архивы;
- посмотрите в Google Search Console или Яндекс.Вебмастере, какие URL уже попали в индекс;
- если сайт недавно мигрировал, проверьте, не остались ли старые правила от другого движка.
Какой robots.txt нужен WordPress-сайту
У WordPress нет единственного «правильного» файла для всех проектов. Но есть безопасная база, от которой обычно отталкиваются. Она не закрывает ресурсы, нужные для рендера, и не мешает поисковику находить важные страницы.
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-login.php
Disallow: /?s=
Disallow: /search/
Sitemap: https://example.com/sitemap_index.xmlЭтот вариант подходит как стартовая точка, если у вас обычный сайт, а не сложная мультиязычная или закрытая система. Здесь закрыты админка, страница логина и типовые поисковые URL. При этом admin-ajax.php оставлен доступным, потому что его часто используют темы и плагины на фронтенде.
Что не стоит закрывать без проверки
Не спешите запрещать доступ к /wp-content/ и /wp-includes/. Да, там лежат системные файлы, но поисковику нужны пути к CSS и JS, чтобы корректно оценить страницу. Если вы закроете эти каталоги целиком, можно получить проблемы с рендерингом в поиске и ложные сигналы о качестве страницы.
Если задача — убрать из обхода только конкретные служебные папки, лучше закрывать их точечно, а не по всему каталогу. Например, если у вас есть внутренние выгрузки или временные файлы в отдельной директории, запретите только её.
Пошаговая настройка robots.txt в WordPress
Самый надёжный способ — редактировать файл на сервере или через SEO-плагин, который не ломает вывод. Если вы работаете без плагинов, создайте или отредактируйте robots.txt в корне сайта. В WordPress он виртуальный только до тех пор, пока вы не положили реальный файл.
- Сделайте резервную копию текущего
robots.txt. - Уберите лишние правила, особенно старые запреты на весь сайт.
- Оставьте только те разделы, которые действительно не должны обходиться.
- Добавьте ссылку на актуальную карту сайта.
- Проверьте файл в браузере и в инструментах для вебмастеров.
Если нужно закрыть только внутренний поиск и технические URL с параметрами, можно использовать более точные правила. Но не пытайтесь решить всё одним Disallow — это почти всегда приводит к побочным эффектам.
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-login.php
Disallow: /search/
Disallow: /*?s=
Disallow: /*?replytocom=
Sitemap: https://example.com/sitemap_index.xmlТакой вариант уже аккуратнее работает с типовыми дублями от поиска и комментариев. Но если у вас есть другие параметры в URL, сначала проверьте, как именно они выглядят на сайте. Универсальные шаблоны с wildcard-подобными масками поддерживаются не всеми роботами одинаково, поэтому не стоит полагаться на них без теста.
Когда лучше использовать плагин, а когда код
Если сайт ведёт редактор или контент-менеджер, удобнее дать управление через SEO-плагин. Если проект технический и правила фиксированные, проще держать файл в репозитории или на сервере. Для сравнения:
| Подход | Плюсы | Минусы |
|---|---|---|
Ручной robots.txt | Прозрачно, быстро, без лишней логики | Нужно следить за изменениями вручную |
| SEO-плагин | Удобно для редакции, есть интерфейс | Можно случайно перезаписать правила |
| Код/деплой из репозитория | Контроль версий, предсказуемость | Нужен процесс выкладки |
Если вы используете плагин вроде Clearfy Pro, проверьте, не генерирует ли он собственный robots.txt и не конфликтует ли с серверным файлом. Для технических сайтов это важный момент: два источника правды в этой зоне быстро превращаются в хаос.
Как проверить, что настройка сработала
Проверка должна быть не только визуальной. Откройте файл по прямому адресу и убедитесь, что он отдается с кодом 200, а не редиректится на главную или страницу ошибки. Затем проверьте, что поисковик видит именно актуальную версию.
- в браузере откройте
/robots.txtи убедитесь, что правила совпадают с ожидаемыми; - в Search Console используйте проверку URL или отчёты по индексации;
- посмотрите логи сервера: роботы должны перестать активно ходить в закрытые разделы;
- проверьте, не исчезли ли из обхода CSS/JS, если вы их не закрывали;
- поиск по сайту и внутренние архивы должны оставаться доступны, если вы их не запрещали специально.
Если после изменения файла страницы всё ещё остаются в индексе, это нормально: robots.txt не удаляет уже известные URL мгновенно. В таком случае нужен отдельный шаг — либо noindex на самих страницах, либо корректный редирект, либо удаление через инструменты вебмастера, если речь о чувствительном контенте.
Частые ошибки и как их исправить
Закрыли слишком много
Если после правки в отчётах появились проблемы с рендерингом, проверьте запреты на системные каталоги. Уберите общий запрет на /wp-content/ и оставьте только точечные пути, если они действительно нужны.
Файл не обновился
Иногда WordPress или плагин кэширует вывод. В таком случае очистите кэш сайта, серверный кэш и CDN. После этого снова откройте файл напрямую. Если в корне лежит физический robots.txt, именно он имеет приоритет над виртуальным выводом WordPress.
Ожидали удаления из индекса
Это типичная ошибка. Для удаления уже проиндексированных страниц используйте noindex, редирект или удаление URL через инструменты поисковика. robots.txt нужен для управления обходом, а не для «магического» удаления.
Сломали sitemap
Если карта сайта перестала открываться, проверьте, не закрыли ли вы путь к ней через слишком общий шаблон. Ссылка на sitemap должна быть доступна роботам, иначе поисковик будет хуже понимать структуру сайта.
Практические советы по безопасности и производительности
Не храните в robots.txt секреты и не рассчитывайте на него как на защиту. Если URL действительно приватный, ограничивайте доступ на уровне авторизации, noindex или сервера. Для служебных страниц лучше использовать нормальные механизмы контроля доступа, а не запрет для роботов.
Для производительности полезно не только закрыть мусорные URL, но и убрать бесконечные параметры, которые плодят обход. Если на сайте есть внутренний поиск, фильтры или сортировки, проверьте, не создают ли они десятки почти одинаковых страниц. Иногда проще ограничить генерацию таких URL в шаблоне или через настройки плагина, чем пытаться потом лечить это одним файлом.
Если вам нужен более широкий контроль над дублями, индексированием и служебными страницами, удобнее сочетать robots.txt с настройками SEO-плагина и проверкой в вебмастере. Но сам файл должен оставаться простым и предсказуемым: чем меньше в нём магии, тем меньше шансов сломать обход сайта.