На WordPress дубли часто появляются не только из-за тегов и категорий, но и из-за архивов автора, дат, пагинации, страниц вложений и параметров URL. На небольшом сайте это выглядит как «мусор в индексе», а на контентном проекте быстро превращается в размывание веса страниц и лишнюю нагрузку на краулер.
Ниже — рабочий сценарий: как понять, какие архивы реально дублируют контент, что можно закрыть от индексации, где лучше поставить canonical, а где вообще убрать генерацию страницы на уровне шаблона или настроек.
Когда проблема уже есть: как диагностировать дубли архивов
Сначала не трогайте robots.txt и не ставьте массовый noindex наугад. Сначала нужно увидеть, какие URL уже попали в индекс и чем они отличаются друг от друга.
Что проверить в первую очередь
- поисковую выдачу по шаблону
site:example.comи запросам видаsite:example.com inurl:tag,site:example.com inurl:author,site:example.com inurl:page/; - отчёты краулера: дубли title, одинаковые H1, одинаковые описания, повторяющиеся архивы;
- наличие страниц вложений вида
/sample-image/, если медиафайлы индексируются отдельно; - параметры сортировки и фильтров, если они создают отдельные URL;
- архивы дат, если сайт не ведёт новостной архив и эти страницы пустые или почти пустые.
Если у вас есть доступ к Search Console, проверьте разделы с исключёнными страницами и дубликатами. Но даже без него можно быстро увидеть проблему через краулер или обычный просмотр HTML-кода: у дублей часто совпадают title, description и основной текст.
Признаки, что архив лучше закрыть или изменить
- страница почти полностью повторяет другой архив;
- на ней нет уникального текста, только список записей;
- она не приносит трафик и не имеет самостоятельной ценности;
- поисковик выбирает не ту версию URL в качестве основной;
- пагинация создаёт десятки слабых страниц без спроса.
Какие дубли архивов WordPress встречаются чаще всего
В WordPress типовая проблема — не один дубль, а набор похожих страниц. Их важно разделять, потому что решение для каждого случая разное.
| Источник дубля | Что обычно делать | Компромисс |
|---|---|---|
| Архивы тегов | Оставить только полезные, остальные закрыть noindex | Теги могут остаться для навигации, но не для индекса |
| Архивы автора | Оставить, если есть несколько авторов и уникальные страницы автора | При одном авторе часто лучше закрыть |
| Архивы дат | Закрыть, если сайт не новостной | Потеря отдельной страницы архива по дате |
| Страницы вложений | Редиректить на файл или запись-родитель | Нужно аккуратно проверить медиа-ссылки |
| Пагинация архивов | Оставить, если она нужна для навигации | Не закрывать без анализа, чтобы не сломать обход |
Пошаговое решение: что делать с дублями архивов
Шаг 1. Уберите индексирование страниц вложений
Если у изображения или файла есть отдельная страница attachment, она почти всегда бесполезна для поиска. На практике лучше перенаправлять такие страницы на родительскую запись или сам файл.
Если вы не хотите ставить плагин, можно сделать это кодом в functions.php дочерней темы или в небольшом mu-plugin:
<?php
add_action('template_redirect', function () {
if (is_attachment()) {
$parent = wp_get_post_parent_id(get_queried_object_id());
if ($parent) {
wp_safe_redirect(get_permalink($parent), 301);
exit;
}
wp_safe_redirect(home_url('/'), 301);
exit;
}
});Такой вариант безопаснее, чем просто закрывать attachment в robots.txt: поисковик перестаёт видеть отдельную страницу, а пользователь не попадает на пустой архив файла.
Шаг 2. Закройте от индексации архивы, которые не несут ценности
Если у сайта один автор, архив автора обычно дублирует блоговую ленту. То же самое касается архивов по датам на корпоративных и маркетинговых сайтах. Здесь лучше не блокировать URL в robots.txt, а отдать noindex, follow, чтобы поисковик не индексировал страницу, но мог переходить по ссылкам.
<?php
add_filter('wp_robots', function (array $robots) {
if (is_author() || is_date()) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
});Этот подход работает только если тема выводит стандартные robots meta через wp_robots. Если у вас старый SEO-плагин, проверьте, не переопределяет ли он мета-теги своим способом.
Шаг 3. Настройте теги и категории по факту, а не по привычке
Теги в WordPress часто плодятся автоматически: редактор добавляет их без стратегии, а потом каждый тег создаёт отдельный архив с двумя записями. Если тегов много, а пользы мало, часть архивов лучше закрыть.
Практичный критерий простой: если у тега нет устойчивого спроса и он не собирает отдельный кластер материалов, архив можно оставить только для внутренней навигации. Для этого достаточно noindex на архивы тегов, а сами страницы записей останутся доступными.
Шаг 4. Проверьте canonical на архивных страницах
На некоторых сайтах проблема не в индексации, а в том, что canonical указывает не туда: на первую страницу пагинации, на саму запись или на другой архив. Это особенно заметно после миграций и при ручной правке шаблонов.
Если вы выводите canonical вручную, не дублируйте его в теме и в SEO-плагине одновременно. Для архивов лучше оставить один источник правды. В стандартной установке WordPress и нормальном SEO-плагине canonical обычно уже генерируется корректно, если не вмешиваться в шаблоны.
Если нужен быстрый вариант: плагин или код
Когда сайт уже в проде и времени мало, можно пойти двумя путями. Плагин удобнее для контент-менеджера, код — предсказуемее для разработчика и меньше зависит от обновлений.
| Подход | Плюсы | Минусы |
|---|---|---|
| SEO-плагин | Быстро настраивается, видно в интерфейсе | Легко получить конфликт настроек и лишние модули |
| Код в теме / mu-plugin | Контроль, минимум лишней логики | Нужна аккуратность и тестирование |
| robots.txt | Просто закрыть обход | Не решает проблему дубля в индексе |
Если задача именно убрать дубли, robots.txt — не основной инструмент. Он полезен для экономии краулингового бюджета, но не заменяет canonical и noindex.
Как проверить, что решение сработало
После внедрения не ограничивайтесь визуальной проверкой. Нужны минимум три проверки: HTML, ответ сервера и поведение в индексе.
- Откройте проблемный архив и посмотрите исходный код: есть ли
<meta name="robots" content="noindex,follow">или эквивалентный вывод. - Проверьте attachment URL: должен быть 301-редирект на родительскую запись или главную.
- Убедитесь, что canonical указывает на нужную страницу, а не на дубль.
- Прогоните сайт краулером и сравните количество архивных URL до и после.
- В Search Console запросите переобход важных страниц и проверьте, как поисковик видит новые мета-теги.
Если страница ещё висит в индексе, это не значит, что решение не работает. Поисковику нужно время, чтобы переобойти URL и обновить сигналы. Важнее, чтобы на самой странице уже были правильные инструкции для робота.
Частые ошибки и как их исправить
Закрыли архив в robots.txt и ждёте, что он исчезнет из индекса
Так не работает в большинстве случаев. Если URL уже известен поисковику, он может оставаться в индексе без контента. Для удаления дубля нужен noindex или редирект, а не только запрет обхода.
Поставили noindex на всё подряд
Иногда вместе с архивами закрывают категории, которые реально дают трафик. Перед правкой разделите архивы на полезные и технические. Не трогайте то, что уже ранжируется и приводит пользователей.
Сделали редирект со страниц вложений, но сломали медиа-галереи
Если тема или плагин используют attachment pages как часть сценария просмотра, сначала проверьте, не завязаны ли на них ссылки в контенте. В большинстве современных сайтов это не проблема, но после старых миграций лучше протестировать несколько медиа-страниц вручную.
Оставили дубли title и H1 на архивных страницах
Даже если архив закрыт от индексации, одинаковые заголовки мешают диагностике и краулингу. Для полезных архивов задайте уникальные title и короткое описание, а для ненужных — не пытайтесь их «улучшать», проще закрыть.
Практические советы по безопасности и производительности
Чем меньше лишних архивов генерирует сайт, тем проще его обходить и тем меньше шансов получить мусор в индексе после установки новых плагинов. Но есть и технические нюансы.
- Не правьте
functions.phpосновной темы на живом сайте — используйте дочернюю тему или mu-plugin. - После изменения robots/meta очистите кеш страницы и серверный кеш, иначе поисковик и пользователь увидят старую версию.
- Если используете SEO-плагин, проверьте, не дублирует ли он ваши правила noindex и canonical.
- Не закрывайте пагинацию архивов без необходимости: это может ухудшить обход контента.
- После редиректов проверьте логи 404 и цепочки перенаправлений.
Если нужен более системный подход к чистке дублей и технических страниц, удобно использовать инструменты вроде Clearfy Pro: он закрывает часть типовых задач по удалению дублей и технической чистке сайта, но даже с ним важно понимать, что именно вы отключаете и зачем. Ссылка на плагин: Clearfy Pro.
В итоге задача сводится не к «удалить всё лишнее», а к точной настройке: полезные архивы остаются, технические — получают noindex или редирект, а страницы вложений перестают плодить отдельные URL. Это даёт более чистую структуру сайта без риска потерять нужные страницы из поиска.