wpcompany.ru wordpress WPCompany

Как удалить архивы авторов и дат в WordPress без потери индексации

Архивы авторов и дат часто остаются в WordPress включёнными по умолчанию, хотя на небольших и средних сайтах они не дают полезного трафика, а только создают дополнительные страницы в индексе. Проблема обычно проявляется не в одной ошибке, а в наборе симптомов: в поиске появляются пустые архивы, в отчётах сканирования растёт число малоценных URL, а SEO-плагин продолжает генерировать мета-теги для страниц, которые вам не нужны.

Если задача именно в том, чтобы убрать такие архивы из индекса и не сломать сайт, лучше сначала понять, что уже работает на проекте: SEO-плагин, тема, кастомный код или всё сразу. От этого зависит, где отключать архивы и как не получить конфликт настроек.

Когда архивы авторов и дат лучше отключить

На практике это имеет смысл, если у сайта один автор, публикации не завязаны на персональные страницы, а архивы по датам не используются как навигация. Для новостных и многопользовательских проектов решение может быть другим: иногда архив автора полезен, если у каждого автора есть свой контентный профиль и нормальная страница с описанием.

Типичные признаки, что архивы мешают

  • в индексе есть страницы вида /author/username/ и /2024/05/, но они не дают трафика;
  • в поиске отображаются пустые или почти пустые архивы;
  • в sitemap попадают URL, которые вы не хотите продвигать;
  • в отчётах сканирования много страниц с одинаковой структурой и слабым содержанием.

Диагностика: где именно включены архивы

Перед изменениями проверьте три уровня: настройки SEO-плагина, тему и кастомные сниппеты. Частая ошибка — отключить архивы в одном месте и оставить их доступными в другом. Тогда URL продолжат открываться, а поисковик всё равно сможет их обходить.

Что проверить в админке

  • есть ли в SEO-плагине отдельные настройки для архивов авторов и дат;
  • не выводит ли тема ссылки на архивы в шапке, карточках автора или метаблоках;
  • не добавлен ли кастомный код в functions.php или в плагин сниппетов;
  • не попадают ли архивы в XML-карту сайта.

Если у вас установлен плагин уровня Clearfy Pro, такие страницы часто можно отключить через интерфейс без кода. Это удобнее, когда проект поддерживает не разработчик, а редактор или контент-менеджер. Но если нужен точечный контроль, надёжнее использовать код.

ПодходКогда подходитПлюсМинус
SEO-плагинНужна быстрая настройка без разработкиМеньше риска сломать шаблонЗависимость от интерфейса и логики плагина
Код в теме или MU-плагинеНужен полный контрольПоведение предсказуемоНужно следить за обновлениями и местом подключения
Только noindexНужно оставить доступ, но убрать из индексаМягкое решениеURL всё ещё доступны для обхода

Пошаговое решение через код

Если вы хотите именно убрать архивы из индекса и при этом не полагаться на настройки темы, можно отключить сами архивы и добавить noindex для подстраховки. Лучше размещать такой код в небольшом MU-плагине или в отдельном плагине для сайта, а не в functions.php активной темы.

1. Отключаем архивы авторов и дат

<?php
/**
 * Plugin Name: Site Archive Controls
 */

add_action('init', function () {
    global $wp_rewrite;

    if (isset($wp_rewrite)) {
        $wp_rewrite->author_base = 'author';
    }
});

add_filter('author_link', function ($link) {
    return home_url('/');
}, 10, 1);

add_filter('getarchives_link', function ($link) {
    return '';
}, 10, 1);

add_action('template_redirect', function () {
    if (is_author() || is_date()) {
        wp_redirect(home_url('/'), 301);
        exit;
    }
});

Этот вариант жёсткий: он перенаправляет архивы на главную. Подходит не всем. Если у вас есть внешние ссылки на архивы и вы не хотите терять их полностью, лучше оставить страницы доступными, но закрыть их от индексации.

2. Оставляем страницы открытыми, но ставим noindex

<?php
add_filter('wp_robots', function (array $robots) {
    if (is_author() || is_date()) {
        $robots['noindex'] = true;
        $robots['follow'] = true;
    }

    return $robots;
});

Такой вариант обычно безопаснее для сайтов, где архивы уже где-то используются. Поисковик сможет перейти по ссылкам, но не будет держать эти страницы в индексе как целевые.

Если используете SEO-плагин

Во многих проектах проще отключить архивы в интерфейсе SEO-плагина, а код оставить только как страховку. Это особенно удобно, если сайт ведут несколько человек и важно, чтобы настройки были видны в админке.

Проверьте, есть ли в плагине отдельные параметры для:

  • архивов авторов;
  • архивов дат;
  • мета-robots для архивных страниц;
  • исключения архивов из sitemap.

Если плагин умеет отключать архивы, не дублируйте это ещё и в теме через шаблонные редиректы. Иначе потом сложно понять, что именно сработало и почему страница стала отдавать не тот код ответа.

Как проверить, что решение сработало

Проверка нужна не только в браузере. Смотрите и HTTP-ответ, и мета-теги, и sitemap.

  1. Откройте архив автора или даты в браузере.
  2. Проверьте, отдаёт ли страница 301 на главную, если вы выбрали редирект.
  3. Если редиректа нет, посмотрите исходный код страницы и найдите noindex в robots meta или HTTP-заголовках.
  4. Проверьте XML-sitemap: архивные URL не должны туда попадать, если вы их отключали.
  5. В Search Console отправьте страницу на проверку после переобхода, если она уже была в индексе.

Для быстрой диагностики удобно использовать curl:

curl -I https://example.com/author/username/
curl -I https://example.com/2024/05/

Если вы видите 200 OK, это не всегда ошибка. Но тогда нужно убедиться, что на странице действительно стоит noindex, а не просто пустой шаблон без указаний для поисковика.

Частые ошибки и как их исправить

Редирект на главную без проверки контекста

Если у вас есть старые внешние ссылки на архивы, массовый редирект на главную может выглядеть как мягкое решение, но на практике он часто ухудшает поведение сайта. Лучше перенаправлять архивы на ближайшую релевантную страницу или оставлять их с noindex, если они нужны пользователям.

Отключили архивы, но они остались в sitemap

Это происходит, когда настройки индексации и генерации карты сайта живут в разных местах. После изменения проверьте sitemap вручную и очистите кеш, если он есть.

Сломали страницу автора для многопользовательского сайта

На проектах с редакцией архив автора может быть частью навигации. В таком случае не отключайте его полностью, а доработайте шаблон: добавьте описание автора, список публикаций и нормальный заголовок. Тогда архив перестаёт быть «тонкой» страницей.

Добавили код в тему и потеряли его после обновления

Если решение критично для SEO, не храните его в файлах активной темы. Для таких задач лучше отдельный плагин сайта или MU-плагин.

Практические советы по безопасности и производительности

Само отключение архивов почти не нагружает сайт, но ошибки вокруг него могут создать лишние редиректы и цепочки ответов. Это уже влияет и на скорость, и на сканирование.

  • не делайте несколько редиректов подряд: архив → промежуточная страница → главная;
  • после изменений очищайте кеш страницы и кеш объекта, если он используется;
  • не закрывайте архивы только через robots.txt — это не заменяет noindex и не убирает уже известные URL из индекса;
  • если используете кастомный код, держите его в отдельном файле и версионируйте вместе с проектом.

Если нужен более широкий набор SEO- и технических настроек без ручного кода, можно посмотреть в сторону Clearfy Pro: https://wpshop.ru/plugins/clearfy. Но даже в этом случае полезно понимать, какие именно архивы отключаются и где это проверять после обновлений.

Хороший рабочий сценарий для большинства сайтов такой: сначала отключить архивы в SEO-плагине или кодом, затем проверить HTTP-ответ, robots meta и sitemap, после чего отправить на переобход только те URL, которые уже были в индексе. Тогда вы не гадаете, сработало ли решение, а видите это по факту.

×
Прокачай свой сайт WordPress!

WordPress

-20% на премиум темы и плагины

Создай сайт своей мечты ⋙