SEO для малого бизнеса

robots.txt для WordPress: рабочая версия 2026 года

Что закрыть в robots.txt на WP в 2026: фасеты, пагинация, поиск, теги, AJAX. Готовые директивы и проверка через Вебмастер.

обновлено 8 минут чтения 4 Дмитрий Акиндинов
Содержание
  1. Что вообще делает robots.txt
  2. Базовый рабочий robots.txt для WordPress
  3. Особенности для интернет-магазина WooCommerce
  4. Закрытие отдельных параметров через Clean-param (Яндекс)
  5. Спецсекции для агрессивных ботов
  6. Что НЕ закрывать ни в коем случае
  7. Где смотреть, как бот видит ваш файл
  8. Динамический robots.txt для WordPress
  9. Особенности для разных тем и плагинов
  10. Чек-лист правильного robots.txt
  11. Когда стоит делегировать
  12. Частые вопросы

Рабочий robots.txt для WordPress помещается в 1-3 килобайта. Если файл разросся до десяти, значит в нём перестраховка вместо правил. Закрывают служебные разделы и параметры, а вот папку с темами и плагинами закрывать нельзя: без стилей и скриптов робот увидит сломанную страницу.

robots.txt это первый файл, который смотрит поисковый бот, заходя на ваш сайт. Маленький текстовый документ в корне домена решает, какие папки и страницы боту разрешено обходить. Сделан криво — Яндекс или Google индексирует мусор, фасеты, страницы корзины, дубли. Сделан хорошо — индексация идёт по нужным разделам, бюджет робота тратится на ценный контент.

В 2026 году в WordPress есть свои особенности, которые на старых шаблонах из 2018-го учтены плохо. Разберу актуальную рабочую версию robots.txt и принципы, чтобы вы могли адаптировать под свой сайт.

Иконка робота рядом с деревом папок

Что вообще делает robots.txt

robots.txt это рекомендация для поисковых ботов, какие пути обходить, какие нет. Лежит в корне домена: https://saitfix.ru/robots.txt. Бот сначала запрашивает этот файл, потом по его правилам идёт по сайту.

Что важно понимать:

  • robots.txt это рекомендация, не запрет. Большинство ботов Яндекса и Google уважают его. Спам-боты часто нет.
  • robots.txt не закрывает страницы от индексации полностью. Он закрывает обход. Если на закрытую страницу ведут ссылки, она всё равно может попасть в индекс с пустым описанием. Для полноценного noindex нужен мета-тег в HTML.
  • Директивы для разных ботов могут быть разными. Можно отдельно дать правила для Yandex, Google, MJ12bot.
  • Файл должен быть UTF-8 без BOM, иначе боты могут не распарсить.

Базовый рабочий robots.txt для WordPress

Минимальный набор, который я ставлю на 90 процентов сайтов:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/cache/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Allow: /wp-content/uploads/
Disallow: /xmlrpc.php
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /?s=
Disallow: /search/
Disallow: /*?replytocom=
Disallow: /*?attachment_id=
Disallow: /trackback/
Disallow: /*/feed/
Disallow: /*/comments/feed/
Disallow: /author/
Disallow: /tag/
Disallow: /category/*/page/
Disallow: /*?
Allow: /*?p=
Allow: /*?page_id=
Allow: /*?utm_source=
Allow: /*?yclid=

Host: saitfix.ru

Sitemap: https://saitfix.ru/sitemap.xml
Sitemap: https://saitfix.ru/sitemap_index.xml

Разберу по частям, что зачем.

Стандартное закрытие WP

/wp-admin/, /wp-includes/, /wp-content/plugins/, /wp-content/themes/, /wp-content/cache/ это служебные пути. Контента там нет, индексировать нечего, боту обходить нет смысла.

/wp-content/uploads/ через Allow открыт. В нём лежат картинки и файлы из медиатеки, и поисковики должны их видеть для индексации в картинках Google и Яндекс.

Закрытие точек атаки

/xmlrpc.php, /wp-login.php, /wp-register.php. Для индексации они не нужны, а для ботов служат точками брутфорса. Закрытие в robots.txt само по себе их не защитит, но снижает нагрузку добросовестных ботов.

Поиск и пагинация

/?s= это URL-параметр поиска WordPress. На каждое поисковое слово пользователь генерирует уникальную страницу, и индексация этого мусора не нужна.

/search/ похожее, для тем, которые делают красивые URL поиска.

/category/*/page/ закрывает пагинацию категорий. Спорный пункт. Если у вас в категории 50 страниц контента, и все они уникальные, может имеет смысл оставить. Но обычно пагинация даёт дубли с тонким контентом, и закрыть лучше.

Технические URL

/*?replytocom=, /*?attachment_id= это типичные дубли WordPress. replytocom создаётся при ответе на комментарий, attachment_id это страница вложения.

/trackback/, /*/feed/, /*/comments/feed/ это RSS-ленты комментариев и трекбеки. Нет смысла индексировать.

Авторские страницы и теги

/author/ это страницы авторов. Для большинства корпоративных сайтов это бесполезные страницы с одной публикацией.

/tag/ похожее: страницы тегов часто дублируют категории и не дают уникального контента.

Если у вас блог с несколькими авторами и активной перелинковкой через теги, эти строки можно убрать. Для типичного коммерческого сайта закрывайте.

Параметры URL и явные исключения

Disallow: /*? закрывает все URL с параметрами. Сильное правило, оно может закрыть много полезного. Поэтому ниже мы открываем явные исключения:

Allow: /*?p= это короткие ссылки WordPress. Allow: /*?page_id= ссылки на статические страницы. Allow: /*?utm_source=, Allow: /*?yclid= это рекламные метки, иногда такие ссылки с других сайтов нужно обходить.

Host

Эта директива устаревшая, но Яндекс ещё уважает. Указывает главное зеркало (с www или без). В 2026 году Яндекс предлагает определять главное зеркало через Вебмастер, но Host не мешает.

Sitemap

В конце обязательно ссылки на sitemap.xml. Это помогает ботам быстрее находить актуальный список страниц.

Особенности для интернет-магазина WooCommerce

WooCommerce генерирует много специфичных URL, которые надо обработать.

Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /*add-to-cart=*
Disallow: /*?orderby=
Disallow: /*?filter_*
Disallow: /*?min_price=
Disallow: /*?max_price=
Disallow: /*?per_page=
Disallow: /shop/page/
Allow: /shop/

Что закрыто:

  • /cart/, /checkout/, /my-account/. Личные кабинеты и корзина для индексации не нужны.
  • add-to-cart это параметр, который добавляет товар в корзину. URL уникальный для каждого добавления.
  • Параметры фильтрации orderby, filter_*, min_price, max_price создают тысячи дублей. Закрываем.
  • per_page это размер страницы каталога. Дубль.
  • /shop/page/ это пагинация. Открываем /shop/, закрываем /shop/page/2/, /shop/page/3/.

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

Закрытие отдельных параметров через Clean-param (Яндекс)

Яндекс понимает специальную директиву Clean-param, которая говорит: не считай вот эти параметры значимыми. Это аккуратнее, чем закрывать целые URL через Disallow.

Clean-param: utm_source&utm_medium&utm_campaign&utm_term&utm_content
Clean-param: yclid&gclid&fbclid&from
Clean-param: replytocom&attachment_id&attachment
Clean-param: orderby&filter_color&filter_size&min_price&max_price

Яндекс при индексации канонизирует URL, удаляя эти параметры. Так в индекс попадает чистый URL без рекламных хвостов и фильтров.

Google Clean-param не понимает, для него это просто комментарий. Чтобы аналогично работать с Google, используйте rel canonical в HTML или меню параметров в Search Console.

Спецсекции для агрессивных ботов

В 2026 году появилась новая категория ботов: AI scrapers, которые пылесосят сайты для тренировки ML-моделей. Если вы не хотите, чтобы ваш контент уезжал в чужие модели:

User-agent: GPTBot
Disallow: /

User-agent: ChatGPT-User
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: anthropic-ai
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: PerplexityBot
Disallow: /

Это закрывает обход для основных AI-ботов. Они в основном уважают robots.txt. Не уважают они довольно редко, обычно это спам-сервисы.

Если у вас, наоборот, информационный сайт и вы хотите, чтобы AI-ассистенты могли цитировать вас (для бренд-узнаваемости), оставляйте без этой секции.

Что НЕ закрывать ни в коем случае

Несколько частых ошибок, которые я видел.

Не закрывайте /wp-content/uploads/

В нём лежат все картинки, видео, документы. Если бот не видит картинки, они не попадают в индекс изображений, и вы теряете трафик. Только Allow.

Не закрывайте /wp-json/ без понимания

REST API WordPress лежит по этому пути. Многие плагины и темы 2024-2026 годов используют его для работы. Закрытие может сломать что-то невидимое для пользователя, но критичное для SEO-плагинов.

Если действительно нужно (например, не хотите светить структуру API), закрывайте через Disallow: /wp-json/, но протестируйте, что Yoast SEO, RankMath и schema-плагины продолжают работать.

Не закрывайте /feed/ если у вас активный RSS

Если ваш контент подтягивается в Telegram-каналы, в RSS-агрегаторы, в почтовые сервисы через RSS, не закрывайте. Можно закрыть только comments/feed/, оставив основной RSS открытым.

Не закрывайте /wp-content/plugins/ целиком, если есть открытые ассеты

Некоторые плагины кладут CSS и JS в свою папку и подключают на всех страницах. Если бот не видит эти файлы, он может посчитать сайт сломанным (Google может пометить страницу как непригодную для мобильных).

Лечение: либо разрешите /wp-content/plugins/*.css, /wp-content/plugins/*.js через Allow, либо вообще не закрывайте папку.

Конфиг-файл с галочкой и щитом

Где смотреть, как бот видит ваш файл

Yandex Webmaster

В разделе Инструменты > Анализ robots.txt. Вводите URL, видите, как Яндекс трактует ваш файл, какие правила применяются.

Можно проверить конкретный URL: например, /cart/?add-to-cart=123. Видите, разрешён ли он, и какому правилу соответствует.

Google Search Console

В новом GSC отдельного инструмента нет, но в URL Inspection для конкретного URL видно, был ли он заблокирован robots.txt.

Старый robots.txt Tester ещё доступен по ссылке support.google.com/webmasters/answer/6062598, но Google его постепенно убирает.

Ручная проверка через curl

curl https://saitfix.ru/robots.txt

Должен открыться текст без ошибок. Размер обычно 1-3 КБ. Если больше 5-10 КБ, перебор, упрощайте.

Динамический robots.txt для WordPress

WordPress по умолчанию генерирует robots.txt сам, если вы не положили свой статический файл в корень. Управлять им можно через functions.php:

add_filter('robots_txt', function($output) {
  $output .= "Disallow: /cart/n";
  $output .= "Disallow: /checkout/n";
  $output .= "Disallow: /*?orderby=n";
  return $output;
}, 10, 1);

Этот код добавляет строки к стандартному WordPress robots.txt.

Альтернатива: положить статический файл robots.txt в public_html/. Тогда WordPress перестаёт генерировать свой и отдаёт ваш.

Я обычно использую статический файл, потому что: — Версия в Git, легко отслеживать изменения. — Не зависит от плагинов и темы. — Быстрее для бота (не нужен PHP-обработчик на каждый запрос).

Особенности для разных тем и плагинов

Yoast SEO

Yoast добавляет в <head> мета-теги robots для конкретных страниц, что важнее, чем robots.txt. У Yoast хорошие настройки по умолчанию: страницы вложений, медиа-страницы, RSS-ленты получают noindex. Не отключайте без понимания.

Yoast также генерирует sitemap.xml автоматически. Не забывайте обновлять robots.txt с правильным путём (обычно /sitemap_index.xml).

RankMath

Похоже на Yoast по функционалу. Также управляет meta robots на уровне страниц.

W3 Total Cache, WP Rocket

Эти плагины кеширования могут создавать свои поддиректории в /wp-content/cache/. Закрытие /wp-content/cache/ в robots.txt всё равно нужно, чтобы бот не натыкался на кешированные копии.

Multilingual (WPML, Polylang)

На многоязычных сайтах нужны отдельные sitemaps для каждого языка:

Sitemap: https://saitfix.ru/sitemap_index.xml
Sitemap: https://saitfix.ru/en/sitemap.xml

Лучше прописать оба, чтобы боты быстро нашли все варианты.

Структура сайта с лупой

Чек-лист правильного robots.txt

  • Файл лежит в корне домена https://saitfix.ru/robots.txt.
  • Файл UTF-8 без BOM.
  • Размер меньше 5 КБ.
  • Директивы для User-agent: * есть.
  • Закрыты служебные пути WP (/wp-admin/, /wp-includes/).
  • Открыта папка /wp-content/uploads/.
  • Закрыты дубли (replytocom, attachment_id, feed, trackback).
  • Закрыта пагинация и фильтры (/page/, ?orderby=, ?filter_*).
  • Указан Sitemap.
  • При необходимости указан Host: saitfix.ru для Яндекса.
  • Если есть желание, добавлены секции для AI-ботов.
  • Файл проверен в Анализе robots.txt Яндекс Вебмастера.
  • Спорные URL проверены через инструмент проверки.

Когда стоит делегировать

Аудит robots.txt и оптимизация под структуру сайта это работа на 1-3 часа. Для большого магазина с фасетной фильтрацией и многими языками до 4-6 часов с тестированием.

Эта работа входит в часовую ставку или в любой из тарифов на /#pricing. Если у вас сайт неправильно индексируется (мусор в индексе или, наоборот, нужные страницы не видны), опишите ситуацию через /#contact. Связанные материалы по SEO в /blog/category/seo/, там есть отдельные статьи про карту сайта, дубли и индексацию.

Частые вопросы

Что должно быть в robots.txt для WordPress

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

Что нельзя закрывать

Папки с темами, плагинами и загрузками. Робот рендерит страницу и без стилей, скриптов и картинок видит её сломанной. Это прямо влияет на оценку мобильной версии.

Как закрыть страницы с параметрами

Для Яндекса отдельной директивой очистки параметров, она аккуратнее прямого запрета. Для остальных поисковиков лучше работает канонический адрес, а не запрет в robots.

Как проверить свой файл

Через инструменты проверки в панелях для вебмастеров: они показывают, как бот видит правила и разрешён ли конкретный адрес. Проверять надо реальные адреса сайта, а не абстрактные примеры.

Передайте техническую часть в надёжные руки.

Слежу за хостингом, бэкапами и обновлениями. Когда что-то пойдёт не так – звоните мне, не своему программисту, не в спортзал и не маме.

Короткие вопросы по теме

Все вопросы по теме "SEO для малого бизнеса"

Заявка

Обсудим задачу

Напишите имя и телефон, выберите удобный канал. Перезвоню или напишу в течение часа в рабочее время.

Куда удобнее ответить?