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

На живом WordPress-сайте проблема обычно не в одной «плохой» странице, а в наборе однотипных URL: старые архивы, страницы с параметрами, дубли категорий, версии с ?replytocom, вложения медиафайлов, тестовые публикации, которые уже удалили, но поисковик их еще помнит. Если просто поставить noindex на все подряд, можно случайно убрать из поиска полезные страницы. Если ничего не делать — индекс разрастается мусором, а в отчетах Search Console появляются дубли и «Просканировано, но не проиндексировано».

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

Что именно нужно удалять из индекса, а что трогать нельзя

Сначала разделите URL на три группы. Это экономит время и снижает риск поломать SEO.

1. Технические и мусорные URL

Это страницы, которые не должны ранжироваться вообще: результаты внутреннего поиска, архивы с параметрами сортировки, страницы вложений без полезного контента, дубли с ?replytocom, служебные страницы плагинов, тестовые записи. Их можно закрывать от индексации или отдавать noindex в зависимости от сценария.

2. Дубли полезных страниц

Например, одна и та же статья доступна по нескольким адресам из-за неправильных канонических ссылок, пагинации, категорий или тегов. Здесь задача не просто «скрыть», а оставить в индексе один основной URL и убрать остальные.

3. Страницы, которые нужно удалить полностью

Если контент устарел, не нужен и не имеет замены, лучше отдавать 410 Gone или хотя бы 404, а не держать его в индексе через редирект на нерелевантную страницу. Редирект на главную — частая ошибка: поисковик видит несоответствие и может игнорировать сигнал.

Диагностика: как найти лишние URL в WordPress

Начинать лучше не с кода, а с проверки фактических адресов. Самый полезный источник — Google Search Console, разделы «Страницы» и «Проверка URL». Там видно, какие адреса уже в индексе, какие исключены и почему.

Дополнительно проверьте сайт вручную:

  • поиск по site:example.com в Google;
  • отчеты плагина SEO, если он показывает канонические URL и индексируемость;
  • список медиа-вложений и архивов автора;
  • URL с параметрами, которые генерирует тема или фильтры;
  • старые записи и страницы, которые уже удалены, но на них есть внешние ссылки.

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

Пошаговое решение: как убрать страницы из индекса без лишнего риска

Универсального способа нет, поэтому лучше выбирать действие по типу URL.

Шаг 1. Для удаленных страниц используйте 410, а не редирект на главную

Если страница удалена окончательно, отдайте 410 Gone. Это честный сигнал поисковику: адрес больше не существует и не должен возвращаться в индекс.

<?php
add_action('template_redirect', function () {
    if (is_admin() || wp_doing_ajax()) {
        return;
    }

    $path = trim(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH), '/');

    // Пример: старый раздел /old-news/ больше не существует
    if ($path === 'old-news') {
        status_header(410);
        nocache_headers();
        exit;
    }
});

Этот вариант подходит только для точечных случаев. Если удаленных URL много, лучше настроить правила на уровне сервера или использовать карту редиректов/удалений в плагине.

Шаг 2. Для дублей ставьте канонический URL

Если у страницы есть несколько версий, не прячьте все копии без разбора. Оставьте одну основную версию через rel=canonical. В WordPress это обычно делает SEO-плагин, но если у вас кастомная тема или конфликт, проверьте, что каноникал не ломается шаблонами.

Пример для своей логики в теме:

<?php
add_action('wp_head', function () {
    if (!is_singular()) {
        return;
    }

    $canonical = get_permalink();
    echo '<link rel="canonical" href="' . esc_url($canonical) . '" />' . "\n";
}, 1);

Если SEO-плагин уже выводит canonical, не дублируйте его вручную. Два канонических тега — частая причина путаницы.

Шаг 3. Для архивов и служебных страниц используйте noindex, но не блокируйте сканирование без необходимости

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

Пример добавления мета-тега для конкретного шаблона:

<?php
add_action('wp_head', function () {
    if (is_search() || is_tag()) {
        echo '<meta name="robots" content="noindex,follow" />' . "\n";
    }
});

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

Шаг 4. Уберите внутренние ссылки на мусорные URL

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

Практически это означает:

  • заменить старые ссылки в контенте;
  • убрать ссылки из шаблонов темы;
  • проверить автогенерируемые блоки;
  • обновить sitemap, чтобы в нем не было удаленных URL.

Сравнение подходов: что выбрать в конкретной ситуации

СитуацияЛучший вариантКомпромисс
Страница удалена навсегда410 Gone404, если 410 сложно внедрить
Есть дубль полезной страницыcanonical на основную версию301-редирект, если дубль не нужен пользователю
Архив или поиск не должны ранжироватьсяnoindex,followЗакрытие через SEO-плагин
Мусорный параметр в URLНормализация URL и редиректИгнорирование параметра в индексации

Проверка результата после внедрения

После изменений не полагайтесь на ощущение «вроде стало лучше». Проверьте результат по шагам.

  1. Откройте URL в браузере и убедитесь, что он отдает нужный статус: 410, 404, 301 или обычный 200 для страниц с noindex.
  2. Проверьте исходный код страницы: есть ли meta robots, корректный ли canonical.
  3. В Search Console отправьте URL на повторную проверку через «Проверка URL».
  4. Посмотрите, исчез ли URL из sitemap.xml, если он удален.
  5. Через несколько дней проверьте отчет по страницам и убедитесь, что количество дублей и исключенных URL меняется в нужную сторону.

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

curl -I https://example.com/old-news/

Если страница должна быть закрыта от индексации, но доступна пользователю, в ответе не должно быть X-Robots-Tag: noindex случайно на весь сайт, иначе вы закроете лишнее.

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

Редирект всех удаленных страниц на главную

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

Ставят noindex и одновременно блокируют URL в robots.txt

Если бот не может зайти на страницу, он не увидит noindex. В итоге URL может дольше висеть в индексе как «заблокированный robots.txt». Для удаления из индекса сначала дайте поисковику увидеть сигнал, потом уже при необходимости ограничивайте доступ.

Оставляют дубли в sitemap.xml

Если удаленная или каноническая версия все еще есть в карте сайта, вы сами подсказываете поисковику неправильный URL. После чистки обязательно пересоберите sitemap.

Дублируют canonical вручную и через плагин

Два canonical-тега или конфликт между темой и SEO-плагином часто ломают логику индексации. Проверьте исходник страницы и оставьте только один источник правды.

Закрывают от индексации полезные страницы по шаблону

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

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

Чистка индекса почти всегда идет рядом с чисткой сайта. Если у вас много старых URL, проверьте и техническую часть:

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

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

Если после внедрения изменений нужные страницы продолжают выпадать из поиска, проверьте не только мета-теги, но и серверные ответы, каноникалы, sitemap и внутренние ссылки. В WordPress именно комбинация этих факторов обычно решает, останется URL в индексе или нет.

Как изменить вывод сообщений об ошибках в WordPress
21.02.2026
Как сделать отладку в WordPress с помощью Xdebug
25.11.2025
Как сделать двойную авторизацию в WordPress без плагинов
18.02.2026
WooCommerce: как автоматически удалять товары из заказа после оплаты
31.05.2026
Как использовать REST API в WordPress для создания своего плагина
08.12.2025