Дубли архивов в WordPress обычно появляются не из-за одной ошибки, а из-за набора мелких вещей: одинаковые категории доступны по разным URL, пагинация индексируется вместе с основным архивом, теги и авторские страницы дублируют смысловые подборки, а служебные параметры в URL создают новые версии тех же страниц. В результате поисковик видит несколько почти одинаковых документов и сам решает, какой оставить в индексе. Это почти всегда хуже, чем явная настройка.
Ниже разберём практический сценарий: как найти такие дубли, что можно закрыть, что лучше оставить, и как проверить, что после правок сайт не потерял нужные страницы из поиска.
Какие дубли архивов встречаются чаще всего
Под archive page в WordPress обычно попадают категории, метки, архивы автора, даты, таксономии и страницы пагинации. Проблема начинается, когда один и тот же контент доступен через несколько маршрутов. Например, категория открывается и по /category/news/, и по альтернативному URL после редиректа, а пагинация создаёт отдельные документы /page/2/, /page/3/ и так далее.
Типовые источники дублей
- категории и метки с очень похожим набором записей;
- архивы автора на сайте, где один автор ведёт почти все материалы;
- страницы пагинации, которые повторяют заголовки и мета-описания основного архива;
- архивы по дате, если они не несут самостоятельной ценности;
- URL с параметрами сортировки, фильтрации или UTM, которые не должны индексироваться как отдельные страницы.
Если у вас уже есть SEO-плагин, часть задач можно закрыть настройками. Но когда дубли появляются из-за темы, кастомных шаблонов или нестандартных таксономий, приходится проверять код и поведение шаблонов вручную.
Диагностика: как понять, что это именно дубли, а не нормальная пагинация
Не стоит сразу закрывать всё подряд от индексации. Сначала нужно понять, какие URL действительно повторяют смысл, а какие нужны для навигации. Для этого удобно смотреть три вещи: заголовок страницы, canonical и статус индексации в Search Console или аналогичном инструменте.
Что проверить в первую очередь
- Откройте несколько архивов и их страницы пагинации.
- Посмотрите исходный код и найдите
<link rel="canonical">. - Сравните title и description у первой страницы архива и у
/page/2/. - Проверьте, не создают ли теги и категории одинаковые подборки записей.
- Убедитесь, что служебные параметры не попадают в индекс как отдельные URL.
Если canonical указывает на саму страницу пагинации, а не на первую страницу архива, это не всегда ошибка. Для пагинации самоканоникал допустим, если страница должна существовать как отдельный документ. Но если у вас десятки почти одинаковых архивов без ценности для поиска, их лучше либо объединить, либо закрыть от индексации.
Пошаговое решение: что делать с дублями архивов
Сценарий ниже подходит для большинства сайтов на WordPress, где нужно оставить полезные архивы, но убрать мусорные и повторяющиеся страницы.
Шаг 1. Оставьте только те архивы, которые реально нужны
Если архив не помогает пользователю и не даёт уникального контента, его лучше отключить или закрыть от индексации. Чаще всего это касается архивов дат, авторов на небольших сайтах и меток, которые дублируют категории.
Если вы работаете через код, можно убрать архивы автора и даты из публичного роутинга, не ломая сам сайт:
add_action('init', function () {
global $wp_rewrite;
if (isset($wp_rewrite)) {
$wp_rewrite->author_base = 'author';
$wp_rewrite->date_structure = '';
}
});
Этот пример не универсален для всех конфигураций и не заменяет полноценную проверку шаблонов. На практике чаще используют SEO-настройки или фильтры шаблона, а не прямое вмешательство в rewrite rules. Если архивы уже проиндексированы, после отключения нужен редирект или корректный canonical.
Шаг 2. Настройте canonical для архивов и пагинации
Если страница должна оставаться доступной, но не конкурировать с другой версией, canonical должен указывать на правильный URL. Для архивов категорий и тегов обычно достаточно штатного поведения темы или SEO-плагина. Проблемы начинаются, когда тема выводит собственный canonical или вообще не выводит его.
Проверить и при необходимости переопределить canonical можно через фильтр wpseo_canonical в Yoast SEO или аналогичный фильтр в другом плагине. Если вы не используете SEO-плагин, лучше править шаблон аккуратно, а не вставлять дублирующий тег вручную в нескольких местах.
Шаг 3. Закройте служебные параметры и мусорные URL
Если на сайте есть сортировка, фильтры или параметры, которые меняют только отображение, но не смысл страницы, такие URL не должны становиться отдельными страницами в индексе. Здесь помогает либо canonical на чистый адрес, либо редирект на основную версию, если параметр не нужен для пользователя.
add_action('template_redirect', function () {
if (is_admin()) {
return;
}
if (!empty($_GET['sort']) || !empty($_GET['filter'])) {
$clean_url = remove_query_arg(array('sort', 'filter'));
wp_safe_redirect($clean_url, 301);
exit;
}
});
Такой подход подходит только для параметров, которые не должны влиять на уникальность контента. Если параметр меняет реальную выдачу и нужен пользователю, редирект делать нельзя — тогда нужен canonical и, возможно, noindex.
Шаг 4. Уберите дубли title и description
Даже если canonical настроен правильно, одинаковые title и description на архиве и его пагинации создают путаницу. Для первой страницы архива и для внутренних страниц лучше использовать разные шаблоны метаданных. Например, на /page/2/ можно добавить номер страницы в title, а description вообще не дублировать дословно.
Если тема генерирует одинаковые мета-теги для всех архивов, это уже повод править шаблон или подключать SEO-плагин с шаблонами для архивов.
Сравнение подходов: плагин, код или только настройки темы
| Подход | Когда подходит | Минус |
|---|---|---|
| SEO-плагин | Нужно быстро закрыть архивы, задать canonical и шаблоны мета-тегов | Не решает ошибки темы, если она ломает разметку |
| Код в теме или mu-plugin | Есть нестандартные архивы, параметры URL, собственные шаблоны | Требует проверки после обновлений |
| Только настройки темы | Тема уже умеет корректно выводить canonical и мета-теги | Обычно недостаточно для сложных дублей |
На практике лучше не выбирать один путь на всё. Например, canonical и шаблоны мета-тегов удобнее держать в SEO-плагине, а редиректы мусорных параметров — в коде или на уровне сервера.
Проверка результата после внедрения
После правок важно не просто открыть страницу в браузере, а проверить поведение так, как его видит поисковик.
Чек-лист проверки
- у архивов и пагинации корректный
canonical; - служебные параметры не создают отдельные индексируемые URL;
- страницы
/page/2/и дальше открываются без 404; - title и description не совпадают дословно на всех страницах архива;
- в Search Console новые версии URL не растут без причины;
- редиректы не зацикливаются и не ломают внутренние ссылки.
Для быстрой ручной проверки можно открыть исходный код страницы и посмотреть, какой canonical отдается. Если у вас есть доступ к консоли, полезно проверить заголовки ответа:
curl -I https://example.com/category/news/page/2/В ответе важно увидеть ожидаемый статус, отсутствие лишних цепочек редиректов и корректный URL назначения. Если страница должна быть индексируемой, не должно быть случайного noindex из темы или плагина.
Частые ошибки и как их исправить
Одинаковый canonical на все страницы архива
Такое часто делают по ошибке, когда разработчик копирует canonical с первой страницы архива на все остальные. В итоге пагинация теряет смысл для поиска, а внутренние ссылки начинают конфликтовать с индексацией. Исправление простое: первая страница архива может канонизироваться сама на себя, а пагинация — на свой URL или на ту схему, которую вы выбрали осознанно.
Редирект вместо noindex там, где страница нужна пользователю
Если параметр меняет только сортировку, редирект на чистый URL обычно уместен. Но если это фильтр каталога или архив с полезной навигацией, редирект может сломать сценарий пользователя. В таком случае лучше оставить страницу доступной, но убрать её из индекса через noindex или canonical.
Закрыли архивы, но забыли внутренние ссылки
Иногда архивы отключают, а ссылки на них остаются в меню, хлебных крошках или блоках темы. Пользователь получает 404 или цепочку редиректов. После любых изменений проверьте навигацию сайта целиком: меню, хлебные крошки, блоки похожих записей, архивные виджеты.
Путают дубли контента и дубли URL
Это разные задачи. Если URL разные, но контент одинаковый, нужна работа с canonical, редиректами или индексацией. Если URL один, но контент меняется через параметры, тогда нужно решать, какие параметры допустимы. Без этой развилки легко сделать лишние ограничения и потерять полезные страницы.
Что делать, если дубли создаёт тема или плагин
Если проблема не в структуре контента, а в шаблоне, ищите источник в archive.php, category.php, tagger.php или в фильтрах SEO-плагина. Иногда тема выводит одинаковые заголовки для всех архивов, иногда плагин добавляет лишние страницы пагинации в sitemap, а иногда оба компонента конфликтуют между собой.
В таких случаях помогает минимальная диагностика: временно переключить тему на стандартную, отключить SEO-плагины по одному и сравнить, где именно меняется canonical и мета-разметка. Это быстрее, чем править код вслепую.
Если нужен более системный подход к чистке дублей, служебных страниц и SEO-настроек, удобно проверять тему и плагины на предмет лишней разметки, архивов и индексации до того, как проблема попадёт в поиск. На практике это часто экономит время на ручной разбор шаблонов и конфликтов.