Архивы тегов в WordPress часто становятся источником дублей: один и тот же набор записей может быть доступен через категории, теги, авторов, даты и пагинацию. Для поисковика это не всегда проблема сама по себе, но если теговые страницы пустые, почти пустые или повторяют категории, они начинают размывать структуру сайта и тратить краулинговый бюджет на мусорные URL.
Ниже — рабочая схема: как понять, что именно у вас дублируется, как закрыть лишнее от индексации без поломки сайта и как проверить, что изменения реально сработали.
Когда теговые архивы нужно закрывать от индексации
Не все страницы тегов надо прятать. Если тег — это осмысленная посадочная страница с уникальным описанием, подборкой материалов и стабильным спросом, его можно оставлять открытым. Проблема начинается, когда тегов слишком много, они создаются автоматически редакторами, а в архиве 1–3 записи без дополнительной ценности.
Типичные признаки проблемы
- в индексе есть десятки или сотни страниц тегов, но трафика они не дают;
- страницы тегов повторяют категории почти один в один;
- в Search Console растёт число «Просканировано, но не проиндексировано»;
- на сайте есть теги с одинаковыми названиями, разными регистрами или транслитерацией;
- архивы тегов доступны с пагинацией, сортировками и параметрами, которые не несут пользы пользователю.
Диагностика: что именно создаёт дубли
Перед правками стоит понять, где именно дубли появляются. Не закрывайте всё подряд только потому, что «так советуют». В WordPress источник дублей обычно один из трёх: таксономии, пагинация и технические параметры URL.
Проверка через поиск и Search Console
Сначала посмотрите, какие URL уже попали в индекс. В Google Search Console откройте отчёт по страницам и отфильтруйте URL, содержащие /tag/. Если видите большое число страниц без кликов и показов, это первый сигнал.
Дальше проверьте сам архив: есть ли у него уникальный title, текст перед списком записей, нормальная перелинковка и не дублирует ли он категорию. Если на странице только список постов и больше ничего, поисковику трудно считать её полезной.
Быстрая проверка в коде темы
Иногда проблема не в самих тегах, а в том, что тема выводит одинаковые мета-теги для всех архивов. Это уже вопрос шаблонов и SEO-настроек. Если у вас нет отдельной SEO-системы, посмотрите, как формируется <title> и meta description для архивов.
<?php
if ( is_tag() ) {
single_tag_title();
}
?>Если на всех тегах выводится только название тега без пояснения, это не ошибка, но и не сильная страница. Для массовых архивов лучше либо закрыть индексацию, либо добавить уникальный контент только на те теги, которые действительно нужны.
Пошаговое решение: как закрыть теги от индексации
Есть три нормальных подхода: через SEO-плагин, через код темы/плагина и через серверные правила. Для WordPress чаще всего достаточно первого или второго варианта. Серверные правила нужны редко, когда нужно жёстко ограничить доступ для ботов к конкретным URL.
| Подход | Когда использовать | Плюс | Минус |
|---|---|---|---|
| SEO-плагин | Если нужен быстрый и безопасный способ | Не требует правки кода | Зависит от настроек плагина |
| Код | Если нужно точечно управлять логикой | Полный контроль | Нужно аккуратно тестировать |
| robots.txt / сервер | Если надо ограничить обход, а не индексацию | Можно быстро ограничить краулинг | Не всегда убирает URL из индекса |
Вариант 1: через SEO-плагин
Если у вас установлен плагин с управлением мета-роботами архивов, найдите настройки таксономий и для тегов выставьте noindex,follow или отключите индексацию архивов тегов полностью. Это самый безопасный путь, потому что плагин обычно сам корректно добавляет мета-теги и не ломает шаблоны.
Важно: noindex не означает мгновенное удаление URL из индекса. Страница должна быть доступна для обхода, чтобы поисковик увидел директиву и со временем исключил её.
Вариант 2: через код для точечного управления
Если SEO-плагина нет или нужно закрыть только часть тегов, можно добавить мета-robots для архивов тегов через wp_robots. Это современный и штатный способ для WordPress.
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_tag() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Такой код лучше размещать в дочерней теме или в небольшом mu-plugin, а не в functions.php активной темы, если вы часто обновляете тему.
Вариант 3: закрыть только пустые и слабые теги
Это более аккуратный сценарий. Не все теги одинаково бесполезны. Можно закрывать только те, у которых мало записей или нет описания. Тогда полезные архивы останутся открытыми.
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_tag() ) {
$tag = get_queried_object();
if ( $tag instanceof WP_Term ) {
$count = (int) $tag->count;
$description = trim( (string) term_description( $tag, 'post_tag' ) );
if ( $count < 5 || '' === $description ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
}
}
return $robots;
} );Логика с порогом < 5 — это не универсальное правило, а пример. Порог нужно подбирать по структуре конкретного сайта.
Что делать с дублями тегов и категорий
Если тег по смыслу повторяет категорию, закрытие от индексации — только половина решения. Иначе редакторы продолжат плодить одинаковые сущности. Лучше сначала определить, какие таксономии на сайте реально нужны.
Чек-лист перед чисткой
- оставить только те теги, которые используются как навигационные метки, а не как мусорные ключи;
- объединить дубли с разным написанием:
seo,SEO,сео; - удалить теги без записей или с одной записью, если они не несут смысла;
- проверить, не создаёт ли импорт контента новые теги автоматически;
- убедиться, что в шаблоне архива тега есть уникальный заголовок и описание, если архив оставляется открытым.
Если на сайте уже накопились дубли, сначала приведите в порядок сами термины, а уже потом меняйте индексацию. Иначе в Search Console останется хаос из старых и новых URL.
Проверка результата после внедрения
После правок не ограничивайтесь визуальной проверкой страницы. Нужно убедиться, что поисковый робот видит именно то, что вы ожидали.
Что проверить вручную
- Откройте страницу тега в браузере и посмотрите исходный код.
- Найдите мета-роботс: должен быть
noindex, если вы закрывали архив. - Проверьте, что страница не отдаёт 404 и не закрыта в
robots.txt, если вы рассчитываете на удаление из индекса черезnoindex. - Убедитесь, что пагинация тегов не ломается и страницы постов продолжают открываться нормально.
Для быстрой проверки можно использовать команду:
curl -I https://example.com/tag/seo/В заголовках вы не всегда увидите noindex, потому что чаще он выводится в HTML. Поэтому дополнительно откройте сам документ и проверьте наличие мета-роботов в исходнике.
Что смотреть в Search Console
После переобхода страницы не исчезнут сразу. Это нормально. Смотрите динамику: уменьшается ли число проиндексированных тегов, исчезают ли дубли в отчётах и не растёт ли количество исключённых URL из-за неправильных директив.
Если вы закрыли архивы, но они всё ещё активно показываются в индексе, проверьте, не блокирует ли их robots.txt. Когда бот не может зайти на страницу, он может дольше не увидеть директиву noindex.
Частые ошибки и как их исправить
Закрыли тег в robots.txt вместо noindex
Это частая ошибка. Disallow ограничивает обход, но не гарантирует удаление URL из индекса. Если страница уже известна поисковику, он может держать её в базе без возможности переобхода. Для удаления из индекса чаще нужен доступ к странице и директива noindex.
Поставили noindex на все архивы подряд
Иногда вместе с тегами случайно закрывают категории, авторов и даже пагинацию. Это уже может ударить по внутренней структуре сайта. Проверяйте условия в коде: is_tag() — это не то же самое, что is_tax() вообще.
Удалили теги, но не настроили редиректы
Если вы удаляете старые URL тегов, а на них есть внешние ссылки или внутренние переходы, настройте 301-редирект на релевантную категорию или на главную страницу раздела. Иначе получите цепочку 404 и потерю накопленного веса.
Оставили пустые архивы с индексом
Пустой тег без записей — плохая посадочная страница. Если такой архив нужен только для внутренней навигации, закрывайте его от индексации или удаляйте сам термин.
Практические советы по безопасности и производительности
Если вы правите логику через код, не вносите изменения прямо в родительскую тему. Используйте дочернюю тему или mu-plugin. Так вы не потеряете правки после обновления.
Для сайтов с большим количеством таксономий полезно дополнительно проверить, не генерирует ли тема лишние архивные ссылки в меню, хлебных крошках и блоках «похожие записи». Иногда именно они создают лишний обход и дублируют навигацию.
Если нужен более широкий технический аудит дублей, чистки и SEO-настроек, имеет смысл смотреть в сторону инструментов вроде Clearfy Pro: он помогает управлять служебными дублями, архивами и частью технических настроек без ручной правки каждого шаблона. Но даже с плагином логику индексации всё равно нужно проверять вручную.
Когда лучше не закрывать тег, а улучшить его
Если тег уже получает трафик, имеет понятный интент и по нему есть смысл делать подборку материалов, не спешите ставить noindex. В таком случае лучше доработать страницу: добавить описание, вывести релевантные материалы, убрать мусорные записи и сделать нормальный title. Иногда это даёт больше пользы, чем полное закрытие архива.
Рабочий ориентир простой: если тег помогает пользователю найти материалы по теме, его можно оставить. Если он существует только потому, что редактор когда-то добавил его к статье, а потом про него забыли, такой архив лучше закрыть или удалить.