В WordPress чаще всего индексируются не те страницы, которые реально нужны в поиске: архивы с параметрами, служебные страницы плагинов, результаты внутреннего поиска, пагинация с дублями, страницы тегов без контента. Если просто «запретить всё подряд», можно сломать обход сайта и потерять полезные посадочные. Поэтому задача здесь не в том, чтобы спрятать сайт от поисковиков, а в том, чтобы точечно убрать мусорные URL и оставить в индексе только то, что действительно должно ранжироваться.
Ниже — рабочая схема: как найти проблемные страницы, чем закрывать их от индексации, где лучше использовать noindex, а где достаточно robots.txt, и как проверить, что после правок ничего не сломалось.
Какие страницы WordPress обычно не должны попадать в индекс
Сначала полезно разделить URL на две группы: те, которые нужно скрыть от поисковиков, и те, которые лучше не трогать без причины. Это важный момент, потому что robots.txt и noindex решают разные задачи.
Чаще всего закрывают
- страницы внутреннего поиска вида
?s=; - архивы с параметрами сортировки и фильтров, если они создают дубли;
- страницы авторов на сайтах, где один автор и архив не несёт ценности;
- служебные страницы плагинов, если они не нужны в выдаче;
- пагинацию с тонким или повторяющимся контентом, если она не даёт ценности;
- страницы тегов и дат, когда они пустые или дублируют рубрики.
Что лучше не закрывать автоматически
- полезные рубрики с нормальным текстом и внутренней перелинковкой;
- страницы товаров, записей и важных архивов;
- страницы, которые уже получают трафик и дают переходы из поиска;
- URL, которые нужны для обхода сайта и передачи веса по внутренним ссылкам.
Диагностика: где именно у вас появляются дубли и мусорные URL
Перед правками стоит понять, что именно индексируется. Иначе можно закрыть не ту группу страниц и потом долго искать причину падения трафика. Проверка занимает немного времени, но экономит кучу правок в обратную сторону.
Что смотреть в первую очередь
- Отчёт «Страницы» в Google Search Console: ищите URL с пометками про дубли, просканировано, но не проиндексировано, исключено по
noindex. - Логи или статистику сервера: какие URL чаще всего запрашивают боты.
- Результаты поиска по сайту: если внутренний поиск создаёт отдельные URL, они часто всплывают в индексе.
- HTML-код проблемной страницы: есть ли там
meta robots, canonical и корректный статус ответа.
Если у вас есть доступ к командной строке, быстро проверить индексацию по шаблонам URL можно через поиск в базе или по выгрузке из Search Console. Но даже без CLI уже видно много проблем через обычный просмотр исходного кода и отчёты в панели вебмастера.
Что использовать: robots.txt, noindex или canonical
Это главный практический вопрос. Ошибка здесь встречается чаще всего: закрывают страницу в robots.txt, хотя поисковику нужно сначала увидеть noindex, или наоборот ставят noindex на URL, который вообще не должен обходиться.
| Подход | Когда подходит | Плюс | Минус |
|---|---|---|---|
noindex | Страница доступна, но не должна быть в индексе | Поисковик видит директиву и убирает URL из выдачи | Страница всё равно может обходиться ботом |
robots.txt | Нужно ограничить обход, а не только индексацию | Снижает лишнюю нагрузку на сервер | Если URL уже в индексе, он может там остаться без контента |
canonical | Есть дубль, но нужен один основной URL | Помогает склеить похожие страницы | Не всегда работает как жёсткий запрет на индексацию |
Практически это выглядит так: если страница полезна пользователю, но не должна ранжироваться отдельно, ставьте noindex,follow. Если это технический URL, который не должен обходиться, добавляйте правило в robots.txt. Если есть дубль основного контента, указывайте canonical на основную версию.
Пошаговое решение: как закрыть служебные страницы в WordPress
1. Закрываем внутренний поиск и похожие служебные страницы
Результаты поиска по сайту почти всегда создают мусорные URL. Их редко есть смысл индексировать, особенно если поиск выдаёт пустые или слабые страницы. Самый надёжный вариант — добавить noindex на шаблон результатов поиска.
<?php
add_action('wp_head', function () {
if (is_search()) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
});Этот код можно добавить в дочернюю тему или в небольшой функциональный плагин. Он не запрещает обход страницы, но говорит поисковику не держать её в индексе. Для большинства сайтов этого достаточно.
2. Добавляем запрет на обход в robots.txt для совсем технических URL
Если у вас есть URL, которые не должны даже сканироваться, можно добавить правила в robots.txt. Например, для параметров поиска и некоторых служебных путей.
User-agent: *
Disallow: /?s=
Disallow: /search/
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.phpВажно: не закрывайте в robots.txt то, что уже должно быть выведено из индекса через noindex. Если бот не сможет прочитать страницу, он может не увидеть директиву noindex. Для уже проиндексированных URL это особенно критично.
3. Убираем архивы автора, если они не нужны
На сайтах с одним автором архив автора часто дублирует главную или страницу блога. В таком случае архив лучше закрыть от индексации, а не оставлять пустую страницу ради формальности.
<?php
add_action('wp_head', function () {
if (is_author()) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
});Если архив автора нужен для навигации, но не должен ранжироваться отдельно, этот вариант безопаснее, чем полное удаление страницы или запрет обхода.
4. Проверяем теги, даты и таксономии
Теги и архивы по датам часто создают тонкие страницы без уникальной ценности. Но закрывать их нужно не по принципу «всё подряд», а после проверки реальной пользы. Если теговая страница собирает статьи по узкой теме и даёт переходы, её можно оставить. Если там один-два поста и дублирующий заголовок, лучше поставить noindex.
Для таксономий удобнее использовать настройки SEO-плагина или фильтры темы, если они есть. Если же нужен точечный контроль, можно добавить условие по конкретной таксономии и не трогать остальные архивы.
Когда лучше править через SEO-плагин, а когда через код
Если задача типовая, SEO-плагин часто быстрее и безопаснее: меньше риска ошибиться в шаблоне, проще откатить изменения, удобнее проверить результат. Но если нужна точечная логика по конкретным условиям, код даёт больше контроля.
Например, если вы используете Clearfy Pro, там есть инструменты для чистки сайта и отключения лишних дублей. Это удобно для типовых сценариев, когда нужно быстро убрать технический шум без правок темы. Но даже в этом случае полезно понимать, что именно делает настройка, чтобы не закрыть лишнее.
Сравнение подходов:
- Плагин — быстрее внедрить, проще поддерживать, но меньше гибкости.
- Код в теме или mu-plugin — точнее и прозрачнее, но требует аккуратности и теста после обновлений.
- Комбинация — разумный вариант для сложных сайтов: базовые правила в плагине, исключения в коде.
Проверка результата после внедрения
После правок не ограничивайтесь визуальной проверкой страницы в браузере. Нужно убедиться, что поисковик видит именно то, что вы задумали.
Что проверить вручную
- в исходном коде страницы есть
<meta name="robots" content="noindex,follow" />; - страница отдаёт корректный HTTP-статус
200, если она должна быть доступна; - у основного URL правильный
canonical; - в
robots.txtнет случайного запрета на важные разделы; - страница не выпала из внутренней перелинковки, если она должна оставаться доступной пользователю.
Как проверить через консоль
Если есть доступ к серверу, можно быстро посмотреть заголовки ответа. Это помогает понять, не мешает ли редирект или статус страницы.
curl -I https://example.com/?s=testВ ответе смотрите на статус, редиректы и наличие заголовков, если они используются вашим SEO-решением. Для страниц с noindex полезно также проверить исходный HTML, потому что не все настройки выводятся в заголовках.
Частые ошибки и как их исправить
Закрыли страницу в robots.txt, но не поставили noindex
Это классическая ошибка. Если URL уже в индексе, бот может больше не увидеть страницу и не получить сигнал на удаление. Решение: временно открыть обход, добавить noindex, дождаться переобхода, потом при необходимости снова ограничить сканирование.
Поставили noindex на важную посадочную
Такое часто случается при массовой настройке архивов или таксономий. Если страница приносит трафик или участвует в перелинковке, уберите noindex и проверьте, не дублирует ли она другой URL. Иногда проблема не в индексации, а в плохом canonical или в шаблоне заголовка.
Закрыли всё через один шаблон без исключений
Например, отключили индексацию всех архивов рубрик, хотя часть из них была полноценными посадочными. Исправление простое: делайте правила точечно по типу страницы, а не по принципу «все архивы одинаковые».
Забыли про пагинацию
Если у вас есть страницы /page/2/, /page/3/ и дальше, они могут быть полезны для обхода, даже если не должны ранжироваться отдельно. Не спешите закрывать их в robots.txt. Сначала проверьте, не ломается ли обход каталога или архива.
Практические советы по безопасности и производительности
Чем меньше мусорных URL вы отдаёте ботам, тем меньше лишней нагрузки на сайт. Но не стоит путать SEO-чистку с попыткой «спрятать» всё подряд. Безопасный подход — убрать только то, что не несёт ценности и создаёт дубли.
- не закрывайте важные страницы от индексации без проверки трафика и внутренней структуры;
- не используйте массовые плагины, которые меняют robots и canonical без понятной логики;
- если правите кодом, выносите изменения в дочернюю тему или отдельный mu-plugin, а не в основной шаблон;
- после обновления темы или SEO-плагина повторно проверьте вывод
meta robotsи canonical; - не смешивайте запрет обхода и запрет индексации в одном правиле без понимания последствий.
Если нужен более широкий аудит дублей и технического мусора, имеет смысл посмотреть инструменты для чистки сайта и удаления лишних SEO-обвязок. Но даже тогда финальная проверка должна оставаться ручной: именно она показывает, что реально видит поисковик, а не только интерфейс плагина.
После внедрения изменений полезно вернуться в Search Console через несколько дней или недель и посмотреть, как меняется статус страниц. Если URL продолжает попадать в индекс, значит проблема не в одной директиве, а в сочетании факторов: canonical, внутренние ссылки, sitemap, редиректы и контент шаблона.