Архивы авторов и дат в WordPress часто становятся источником дублей: один и тот же контент доступен через рубрики, теги, архив автора, архив месяца и пагинацию. Для небольшого сайта это выглядит безобидно, но в индексе поисковика такие страницы начинают конкурировать между собой и размывают сигнал релевантности. На практике задача обычно сводится не к «удалить всё», а к тому, чтобы оставить полезные страницы и закрыть мусорные архивы аккуратно.
Ниже разберём рабочую схему: как понять, что проблема именно в дублях архивов, что лучше закрывать через настройки SEO-плагина, а что — кодом в теме или мини-плагине, и как проверить, что после изменений сайт не потерял важные страницы.
Когда архивы действительно создают проблему
Не каждый архив нужно отключать. Если у вас новостной или авторский проект, архив автора может быть полезной посадочной страницей. Но если на сайте один редактор, а архивы дат не несут отдельной ценности, они почти всегда лишние.
Типичные признаки дублей
- в Google Search Console видны страницы вида
/author/username/,/2024/05/,/tag/slug/с низким качеством или без показов; - в выдаче появляются архивы вместо нужных записей;
- поиск по сайту или внутренние ссылки ведут на архивы, которые не дают уникального контента;
- в отчётах краулинга много URL с одинаковыми title и meta description.
Если архивы уже попали в индекс, простое удаление шаблона не всегда достаточно. Поисковик может ещё долго держать старые URL в базе, поэтому важно не только закрыть их от индексации, но и правильно настроить canonical, robots и внутренние ссылки.
Диагностика: что именно индексируется
Сначала нужно понять, какие архивы реально доступны и как они отдаются сервером. Откройте несколько URL вручную и проверьте код ответа, canonical и robots meta. Для этого удобно использовать DevTools, curl или любой краулер.
curl -I https://example.com/author/admin/Если страница отдаёт 200 OK, а в HTML есть индексируемый canonical на саму себя, поисковик может считать её полноценной страницей. Если архив не нужен, лучше не оставлять его в таком виде.
Ещё один быстрый тест — посмотреть, есть ли на сайте ссылки на эти архивы. Иногда архивы создаются, но нигде не используются. Тогда их можно закрыть без заметного влияния на навигацию.
Какой способ выбрать: плагин, код или оба варианта
Самый безопасный путь — использовать SEO-плагин, если он уже стоит и умеет управлять архивами. Если плагина нет или нужна точечная настройка, проще сделать это кодом в дочерней теме или в небольшом mu-plugin. Ниже — короткое сравнение.
| Подход | Когда подходит | Плюс | Минус |
|---|---|---|---|
| SEO-плагин | Если уже используется Yoast, Rank Math или похожий инструмент | Быстро, без правки темы | Не всегда даёт тонкую настройку |
| Код в теме / mu-plugin | Нужны точечные правила для author/date архивов | Полный контроль | Нужно аккуратно тестировать после обновлений |
| Комбинированный вариант | Когда часть архивов закрывается в плагине, часть — кодом | Гибко | Важно не задублировать правила |
Пошаговое решение через код
Если вам нужно закрыть архивы дат и авторов, но оставить рубрики и записи, можно сделать это через фильтры WordPress и заголовки robots. Надёжнее всего вынести код в мини-плагин или mu-plugin, а не в functions.php активной темы.
1. Отключаем архивы дат
Архивы дат редко несут самостоятельную ценность, особенно на корпоративных и контентных сайтах. Их можно перенаправить на главную или на страницу блога, если она у вас есть.
<?php
/**
* Plugin Name: Disable Date Archives
*/
add_action('template_redirect', function () {
if (is_date()) {
wp_safe_redirect(home_url('/'), 301);
exit;
}
});Этот вариант простой, но используйте его только если архивы дат нигде не нужны. Если у вас новостной сайт, лучше не редиректить всё подряд, а оставить архивы и закрыть их от индексации.
2. Закрываем архивы авторов, если автор один
На сайтах с одним автором архив автора почти всегда дублирует блог. В таком случае можно либо редиректить его на страницу «О нас» или блог, либо оставить доступным, но закрыть от индексации.
<?php
add_action('template_redirect', function () {
if (is_author() && !is_admin()) {
wp_safe_redirect(home_url('/blog/'), 301);
exit;
}
});Если у вас несколько авторов и у каждого есть своя роль в структуре сайта, редирект может быть слишком грубым. Тогда лучше использовать noindex и canonical на сам архив, если он реально полезен пользователям.
3. Добавляем noindex для архивов, которые не нужны в поиске
Если редирект нежелателен, можно оставить страницу доступной и убрать её из индекса. Для этого подойдёт фильтр wp_robots, который есть в современных версиях WordPress.
<?php
add_filter('wp_robots', function (array $robots) {
if (is_author() || is_date()) {
$robots['noindex'] = true;
$robots['nofollow'] = true;
}
return $robots;
});Это не заменяет canonical, но помогает поисковику быстрее понять, что архив не должен ранжироваться. Если SEO-плагин уже ставит свои robots-метки, проверьте, не конфликтуют ли правила между собой.
Что делать с рубриками и тегами
Рубрики обычно полезнее архивов дат и авторов, но теги часто превращаются в мусорные страницы, если их создают без системы. Здесь не стоит закрывать всё подряд. Сначала оцените, есть ли у тега уникальный смысл и достаточно ли записей для наполнения архива.
Практичный подход такой:
- оставить рубрики, если они реально помогают навигации;
- закрыть теги без трафика и без уникального контента;
- не плодить десятки однотипных тегов ради SEO;
- проверить, не генерируются ли теги автоматически плагинами импорта или редактором.
Если у вас уже есть SEO-плагин, удобнее закрывать теги через его интерфейс, а не кодом. Например, в Clearfy Pro есть инструменты для чистки дублей и технических страниц, что полезно на сайтах, где архивов и так слишком много.
Проверка результата после внедрения
После изменений важно не ограничиваться визуальной проверкой. Нужно убедиться, что страницы действительно закрыты и не ломают навигацию.
Чек-лист проверки
- архивы дат и авторов отдают
301илиnoindexв зависимости от выбранной схемы; - canonical у нужных страниц указывает на правильный URL;
- внутренние ссылки не ведут на закрытые архивы без необходимости;
- в Search Console не растёт число страниц с дублями title;
- страницы рубрик и записей по-прежнему доступны и индексируются.
Проверить заголовки можно так:
curl -I https://example.com/2024/05/
curl -I https://example.com/author/admin/Если вы используете noindex, откройте HTML страницы и найдите мета-тег robots. Если стоит редирект, убедитесь, что цепочки нет: архив должен вести сразу на конечный URL, а не через несколько промежуточных переходов.
Частые ошибки и как их исправить
Редирект на главную для всех архивов
Это частая ошибка. Пользователь ожидал увидеть список материалов по автору или дате, а получил главную страницу. Для поисковика это тоже не лучший сигнал. Если архив полезен, оставляйте его доступным и закрывайте только от индексации.
Одновременно noindex и запрет в robots.txt
Так делать не стоит, если вы хотите, чтобы поисковик увидел директиву noindex. Если страница закрыта в robots.txt, бот может не зайти на неё и не увидеть мета-тег. Для удаления из индекса обычно достаточно либо редиректа, либо доступной страницы с noindex.
Конфликт SEO-плагина и кода в теме
Если плагин уже управляет архивами, а вы добавили свой фильтр, можно получить дублирующиеся canonical или противоречивые robots-метки. В такой ситуации оставьте только один источник правил. Сначала проверьте настройки плагина, потом уже добавляйте код.
Закрыли архивы, но оставили ссылки на них в меню
Это не критично, но создаёт лишние переходы и раздражает пользователей. После отключения архивов проверьте меню, виджеты, хлебные крошки и блоки «Последние записи».
Безопасность и производительность
Любые изменения в технических настройках лучше делать через дочернюю тему, mu-plugin или отдельный мини-плагин. Так вы не потеряете правки при обновлении темы. Перед внедрением сделайте резервную копию базы и файлов, особенно если сайт уже в индексе и получает трафик.
Если на сайте много технических дублей, полезно не ограничиваться точечным исправлением. Проверьте:
- не создают ли плагины лишние архивы;
- не дублируются ли title и description на страницах пагинации;
- не генерируются ли пустые теги и категории;
- не открыты ли служебные страницы, которые не должны индексироваться.
Для более широкой чистки технических дублей и лишних архивов можно посмотреть в сторону инструментов вроде Clearfy Pro, если вам удобнее управлять этим из панели, а не кодом.
Если нужен авторский архив как полезная страница, не закрывайте его автоматически. Лучше наполнить его нормальным описанием автора, ссылками на соцсети и списком публикаций. Тогда архив перестаёт быть дублем и начинает работать как посадочная страница.