Архивы меток в WordPress часто появляются «по умолчанию», а потом начинают плодить тонкие страницы: у метки есть URL, но на ней 2–3 записи, одинаковый шаблон и почти нулевая польза для поиска. Если метки используются как вспомогательная внутренняя навигация, а не как полноценная таксономия с контентной ценностью, их архивы лучше закрыть или отключить.
Задача здесь не в том, чтобы «убить» метки целиком. Нужно убрать именно публичные страницы-архивы, при этом сохранить сами метки в админке и, если нужно, оставить их для внутренней логики темы, фильтров или API.
Когда архивы меток действительно мешают
Проблема обычно проявляется не сразу. Сайт может нормально работать, но в индексе появляются десятки страниц вида /tag/..., которые не дают трафика и конкурируют с основными разделами. Особенно это заметно на новостных, контентных и корпоративных сайтах, где метки ставят «на всякий случай».
Типичные признаки
- в отчётах поисковых систем есть страницы меток с низким качеством контента;
- внутренний поиск и категории уже покрывают ту же навигацию;
- метки дублируют смысл рубрик или тегов из другого плагина;
- в шаблоне темы метки выводятся автоматически, хотя никто ими не пользуется;
- страницы меток получают заголовки и сниппеты, но не приносят переходов.
Если метки нужны только для админки или для связи записей внутри темы, публичный архив можно убрать без удаления самих терминов.
Диагностика: что именно нужно отключить
Перед правкой кода проверьте, как метки используются на сайте. В WordPress есть два разных слоя: сами термины таксономии и их архивные страницы. Отключать нужно именно публичный архив, а не таксономию целиком, если метки участвуют в логике сайта.
Посмотрите на три вещи:
- Есть ли ссылки на архивы меток в шаблоне записи, сайдбаре или блоках темы.
- Идут ли на эти страницы переходы из поиска или внутренней навигации.
- Не завязаны ли на метки фильтры, REST-запросы или кастомные виджеты.
Если метки используются только как служебные, безопаснее всего закрыть архивы от индексации и при необходимости вернуть 404/410 для публичных URL. Если же они нужны для навигации, можно оставить страницы доступными, но убрать их из индекса.
Пошаговое решение: три рабочих подхода
Подход 1. Отключить архивы меток через код
Если нужен жёсткий вариант без зависимости от SEO-плагина, можно убрать публичный вывод архивов меток через фильтр register_taxonomy_args. Это не удаляет метки из базы, но отключает их архивные страницы для посетителей.
add_filter('register_taxonomy_args', function ($args, $taxonomy) {
if ($taxonomy !== 'post_tag') {
return $args;
}
$args['public'] = false;
$args['publicly_queryable'] = false;
$args['show_ui'] = true;
$args['show_in_nav_menus'] = false;
$args['show_tagcloud'] = false;
$args['rewrite'] = false;
return $args;
}, 10, 2);Этот вариант подходит, если архивы меток не нужны вообще. Но есть важный нюанс: если тема или плагин уже генерируют ссылки на /tag/..., после отключения они начнут вести на несуществующие страницы. Поэтому сначала проверьте шаблоны и виджеты.
Подход 2. Оставить архивы, но закрыть их от индексации
Если метки нужны для пользователей, но не нужны поисковику, лучше не ломать URL, а поставить noindex и убрать их из карты сайта. Это более мягкий сценарий и часто безопаснее для живого проекта.
В SEO-плагинах это обычно делается настройкой для таксономий. Если вы работаете кодом, можно добавить мета-тег через wp_head только на архиве меток:
add_action('wp_head', function () {
if (is_tag()) {
echo "<meta name=\"robots\" content=\"noindex,follow\" />\n";
}
});Это решение не убирает страницу из интернета сразу, но даёт поисковику понятный сигнал не индексировать архив. Для большинства сайтов это нормальный компромисс, если метки нужны как навигационный слой.
Подход 3. Скрыть метки в шаблоне и не создавать новые ссылки
Иногда проблема не в индексации, а в том, что тема выводит метки в карточках и под заголовком записи. Тогда поисковик получает больше внутренних ссылок на слабые страницы, а пользователи видят лишний шум. В этом случае нужно убрать вывод меток из шаблона.
Если в теме используется стандартная функция the_tags(), её можно удалить из шаблона single.php, content-single.php или соответствующего шаблонного файла дочерней темы. Пример замены:
<?php
// Было:
the_tags('<div class="post-tags">', ' ', '</div>');
// Стало: блок удалён полностью
?>Если править шаблон неудобно, иногда достаточно скрыть блок через настройки темы или отключить вывод в конструкторе блоков, если он добавлен через шаблонные части.
Что выбрать: код, SEO-плагин или правка темы
| Способ | Когда подходит | Плюс | Минус |
|---|---|---|---|
| Код в functions.php или mu-plugin | Нужен полный контроль | Не зависит от интерфейса плагина | Нужно аккуратно тестировать |
| SEO-плагин | Нужно только noindex и управление картой сайта | Быстро и безопасно | Не всегда убирает ссылки из темы |
| Правка шаблона | Метки выводятся на фронтенде | Убирает лишнюю навигацию | Не решает индексацию сама по себе |
На практике часто нужен не один, а два слоя: убрать лишний вывод в теме и закрыть архивы от индексации. Это особенно актуально, если сайт уже накопил старые URL меток.
Как проверить, что решение сработало
После внедрения не ограничивайтесь визуальной проверкой. Нужно убедиться, что WordPress действительно перестал отдавать архивы или что они закрыты для индексации.
- Откройте несколько URL меток вручную и проверьте код ответа.
- Посмотрите исходный код страницы на наличие
noindex,follow. - Проверьте, исчезли ли ссылки на метки из карточек записей и шаблонов.
- Если используется SEO-плагин, убедитесь, что архивы меток не попадают в XML-карту сайта.
- Проверьте в Search Console или аналогичном инструменте, что новые страницы меток не индексируются.
Для быстрой проверки кода ответа можно использовать консоль:
curl -I https://example.com/tag/your-tag/Если вы отключали архивы полностью, ожидаемый результат — 404 или перенаправление на релевантную страницу. Если ставили noindex, страница может открываться, но в HTML должен быть корректный robots-мета-тег.
Частые ошибки и как их исправить
Отключили таксономию целиком вместо архивов
Это самая неприятная ошибка. Метки исчезают из админки, ломаются связи записей, а часть плагинов начинает вести себя непредсказуемо. Если метки нужны внутри системы, не трогайте регистрацию таксономии радикально без проверки зависимостей.
Поставили noindex, но оставили ссылки в шаблоне
Такой вариант не критичен, но он не решает проблему полностью. Поисковик всё равно будет обходить страницы, а пользователи продолжат попадать на слабые архивы. Если метки не нужны как навигация, уберите и ссылки.
Забыли про карту сайта
Если архивы меток остаются в sitemap, поисковая система продолжит их активно обходить. После изменения настроек проверьте, что таксономия исключена из карты сайта на стороне SEO-плагина или темы.
Сломали ссылки после смены rewrite
Если вы меняете rewrite у таксономии, старые URL могут отдавать 404. Это нормально только если вы осознанно закрываете архивы и готовы к очистке индекса. В остальных случаях лучше использовать мягкое закрытие через noindex.
Практические советы по безопасности и производительности
Если правите код, не вносите изменения прямо в родительскую тему. Используйте дочернюю тему или небольшой mu-plugin, чтобы настройка не исчезла после обновления. Для точечных правок это самый предсказуемый вариант.
Ещё один полезный момент: если на сайте много служебных архивов, имеет смысл пересмотреть не только метки, но и другие дублирующие таксономии. Иногда проще убрать лишние архивы комплексно, чем потом по одному закрывать десятки страниц.
Если нужен более широкий контроль над дублями, индексацией и чисткой служебных сущностей, можно посмотреть в сторону Clearfy Pro. Но даже с плагином важно понимать, что именно вы отключаете: архивы, ссылки в шаблоне или только индексацию.
В итоге рабочая схема обычно такая: сначала определяете, нужны ли метки пользователям, потом решаете, закрывать их от индексации или отключать полностью, и только после этого правите шаблон и проверяете карту сайта. Такой порядок снижает риск сломать навигацию и не оставляет в индексе лишние страницы.