В блогах на WordPress чаще всего индексируются не только полезные статьи, но и служебные страницы: архивы по датам, внутренний поиск, страницы пагинации, теги, пустые рубрики. На небольшом сайте это выглядит безобидно, но со временем такие URL начинают размывать краулинговый бюджет, плодить дубли и мешать поисковику быстрее находить действительно важные материалы.
Ниже — рабочая схема: что именно закрывать, чем это делать и как не переусердствовать. Сразу оговорюсь: не все архивы нужно запрещать. Иногда рубрики и теги полезны для навигации и могут приносить трафик. Ошибка не в самих архивах, а в том, что в индекс попадает всё подряд без проверки.
Какие страницы блога обычно создают мусор в индексе
Если блог уже живёт какое-то время, проверьте в поиске и в отчётах по индексации такие типы URL:
- архивы по датам:
/2024/05/,/2024/; - страницы внутреннего поиска:
/?s=...; - пагинация архивов:
/page/2/,/page/3/; - теги с тонким содержимым;
- авторские архивы, если на сайте один автор;
- служебные страницы, которые не несут самостоятельной ценности.
Если у вас уже закрыты архивы авторов и дат, но в индексе всё равно остаются их старые версии, значит, проблема не только в метатегах. Нужно проверить каноникал, sitemap и ответы сервера.
Диагностика: что именно попало в индекс и почему
Начните не с настроек, а с фактов. Откройте Google Search Console или Яндекс.Вебмастер и посмотрите, какие URL реально индексируются. Затем проверьте несколько страниц вручную:
- есть ли на странице
<meta name="robots" content="noindex,follow">; - не отдаёт ли страница HTTP-редирект на другую версию;
- не стоит ли канонический URL на саму служебную страницу;
- не включена ли страница в XML-карту сайта;
- не закрыта ли она только в robots.txt, хотя уже успела попасть в индекс.
Последний пункт особенно важен: robots.txt не удаляет URL из индекса, если он уже известен поисковику. Для уже проиндексированных страниц нужен noindex и/или корректный canonical, а в некоторых случаях — удаление через инструменты вебмастера.
Быстрая проверка через браузер и исходный код
Откройте проблемную страницу и посмотрите исходный HTML. Если используете SEO-плагин, он часто добавляет robots-мета автоматически. Но на практике встречаются конфликты: тема выводит один canonical, плагин — другой, а в sitemap страница всё ещё есть. Именно такие расхождения потом дают странные результаты в индексации.
Что закрывать, а что оставить открытым
Универсального списка нет, но для типичного блога можно ориентироваться так:
| Тип страницы | Обычно закрывать | Когда оставить |
|---|---|---|
| Внутренний поиск | Да | Почти никогда |
| Архивы по датам | Чаще да | Если это реально навигационный слой и есть спрос |
| Теги | Зависит от качества | Если теговые страницы наполнены и полезны |
| Пагинация | Обычно нет | Если есть отдельная стратегия индексации |
| Рубрики | Обычно нет | Если рубрика — полноценная посадочная страница |
Для блога чаще всего закрывают именно служебные и пустые страницы, а не всё подряд. Рубрики и теги лучше оценивать по факту: если на странице есть уникальный текст, подборка материалов и нормальная навигация, она может быть полезной.
Пошаговое решение: как убрать архивы, даты и поиск из индексации
Вариант 1. Через SEO-плагин
Если у вас уже стоит SEO-плагин, это самый безопасный путь для редактора и владельца блога. В большинстве случаев можно отключить индексацию архивов по датам, авторов и тегов, а также задать noindex для страниц поиска. Плюс этого варианта в том, что он обычно сам корректно работает с метатегами и sitemap.
Минус тоже есть: если на сайте уже накопились конфликты между темой и плагином, одних галочек может быть мало. Тогда нужно проверить, не дублируется ли логика в коде темы.
Вариант 2. Через код темы или мини-плагин
Если вы не хотите зависеть от настроек плагина, можно точечно добавить noindex для служебных архивов. Ниже пример для functions.php дочерней темы или собственного мини-плагина:
add_action( 'wp_head', function () {
if ( is_search() || is_date() ) {
echo '<meta name="robots" content="noindex,follow">' . "\n";
}
} );Этот пример решает только часть задачи: он добавляет метатег в HTML. Если страница уже есть в sitemap или в индексе, этого может быть недостаточно. Поэтому лучше использовать его как дополнение, а не как единственный механизм.
Для более точечной настройки можно исключить служебные архивы из XML-карты сайта, если ваш SEO-плагин это поддерживает. Вручную править sitemap в WordPress обычно не стоит: при обновлении всё сломается или перезапишется.
Вариант 3. Удалить URL из sitemap и не создавать новые дубли
Если страница должна остаться доступной для пользователей, но не нужна в поиске, важно не только поставить noindex, но и убрать её из карты сайта. Иначе поисковик будет регулярно возвращаться к ней и тратить обход на заведомо ненужный URL.
Для блогов это особенно актуально для:
- страниц поиска;
- архивов по датам;
- пустых тегов;
- страниц с параметрами сортировки и фильтрации, если они есть;
- второстепенных архивов, которые не несут самостоятельной ценности.
Пример точечной настройки для блога
Если нужно закрыть именно поиск и архивы по датам, а рубрики оставить открытыми, можно сделать так:
add_filter( 'wp_robots', function( array $robots ) {
if ( is_search() || is_date() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Этот способ лучше, чем печатать метатег вручную в wp_head, потому что WordPress сам сформирует robots-правила в более совместимом виде. Но он работает только в современных версиях ядра и при нормальной теме, которая не ломает вывод head.
Если у вас установлен SEO-плагин, сначала проверьте, не делает ли он уже то же самое. Двойной noindex обычно не страшен, но двойная логика часто приводит к путанице при отладке.
Как проверить, что решение сработало
После изменений не ограничивайтесь визуальной проверкой. Пройдите по этому чек-листу:
- откройте проблемный URL и убедитесь, что в исходном коде есть
noindex; - проверьте, что страница больше не попадает в XML-sitemap;
- посмотрите HTTP-ответ: страница должна отдавать
200 OK, если вы не ставили редирект; - проверьте canonical: он должен указывать на нужную страницу, а не на служебный архив;
- в Search Console запросите переобход или проверку URL;
- через несколько дней проверьте, уменьшилось ли число проиндексированных служебных страниц.
Если страница всё ещё в индексе, это не всегда ошибка. Поисковик может держать старую версию какое-то время. Важный признак успеха — новые служебные URL перестают попадать в индекс, а старые постепенно выпадают.
Частые ошибки и как их исправить
Закрыли страницу в robots.txt, но она осталась в индексе
Это типичная ошибка. Если URL уже известен поисковику, запрет в robots.txt не удалит его из выдачи. Сначала дайте noindex или настройте корректный ответ, потом уже при необходимости ограничивайте обход.
Поставили noindex, но оставили URL в sitemap
Поисковик получает противоречивый сигнал: в карте сайта страница есть, а в HTML — запрет на индексацию. Это не катастрофа, но лишний шум. Для служебных страниц лучше убрать их из sitemap полностью.
Закрыли всё подряд, включая полезные рубрики
Так делают, когда хотят быстро «почистить индекс». В итоге блог теряет навигационные страницы, которые могли собирать низкочастотный трафик. Сначала оцените качество каждой рубрики и тега, а уже потом принимайте решение.
Конфликт темы и SEO-плагина
Если тема сама выводит canonical или robots, а плагин делает то же самое, в коде появляются дубли. Проверьте исходник страницы и отключите лишнюю логику в одном из мест. Обычно безопаснее оставить это SEO-плагину, а из темы убрать самодельные метатеги.
Практические советы по безопасности и производительности
Если вы вносите правки в тему, не редактируйте родительскую тему напрямую. Используйте дочернюю тему или мини-плагин. Тогда обновление не сотрёт изменения.
Для блогов с большим количеством архивов полезно ещё и уменьшить количество автоматически создаваемых страниц. Чем меньше мусорных URL генерируется, тем проще поддерживать индексацию и тем меньше нагрузка на обход.
Если нужен более широкий набор технических настроек для блога — от чистки дублей до управления индексируемыми страницами — посмотрите Clearfy Pro. Но даже с плагином полезно понимать, какие именно URL вы закрываете и зачем: автоматические настройки не заменяют аудит структуры блога.
В итоге задача сводится не к «запретить всё», а к тому, чтобы оставить в индексе только те страницы, которые реально помогают блогу расти. Для WordPress это обычно означает аккуратную работу с архивами, поиском, sitemap и canonical — без лишних экспериментов и без слепой веры в одну галочку в плагине.