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

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

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

Когда проблема действительно в старом шаблоне

Сначала стоит понять, что именно осталось в индексе. После редизайна обычно всплывают три сценария:

  • в поиске показываются старые сниппеты и устаревшие заголовки;
  • в индексе есть страницы, которые новая тема больше не выводит в интерфейсе, но они доступны по прямому URL;
  • в Search Console растёт число страниц с дублирующимся контентом или «Просканировано, но не проиндексировано».

Если URL открывается, отдаёт 200 OK и содержит старый контент или старую структуру блоков, поисковик не догадается сам, что это уже неактуальная версия. Ему нужно явно показать: страницу нужно обновить, переиндексировать или исключить.

Что проверить в первую очередь

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

Диагностика: где искать старые версии страниц

Удобнее идти от фактов, а не от предположений. Откройте несколько проблемных URL и проверьте заголовки ответа, canonical и robots meta. Если есть доступ к серверу или локальной копии, можно быстро посмотреть HTTP-ответ через curl.

curl -I https://example.com/staryy-url/

В ответе важно увидеть не только код статуса, но и то, не отдаются ли старые редиректы, кеш или неожиданные заголовки. Для HTML-страницы дополнительно проверьте исходник:

curl -s https://example.com/staryy-url/ | grep -iE 'canonical|robots|noindex'

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

Пошаговое решение без лишней чистки

1. Обновите canonical на актуальные URL

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

Если вы выводите собственный <link rel="canonical">, не дублируйте его поверх SEO-плагина. Два canonical в одном документе — частая причина путаницы.

2. Закройте только те страницы, которые больше не нужны

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

Пример для шаблона страницы в теме, где нужно запретить индексацию устаревшего представления:

<?php if ( ! is_user_logged_in() ) : ?>
    <meta name="robots" content="noindex,follow">
<?php endif; ?>

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

3. Настройте редиректы со старых URL

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

Простой пример для .htaccess на Apache:

Redirect 301 /staryy-razdel/ https://example.com/novyy-razdel/

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

4. Уберите из индекса служебные архивы и пустые шаблоны

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

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

Когда нужен код, а когда достаточно плагина

Для большинства сайтов проще и безопаснее сделать это через SEO-плагин и редиректы. Код нужен там, где шаблон нестандартный или логика зависит от условий. Ниже — короткое сравнение.

ПодходКогда подходитМинус
SEO-плагинОбычные записи, страницы, архивы, мета robotsНе всегда удобно для точечных шаблонов
Код в темеКастомные шаблоны, старые страницы, особая логикаМожно сломать индексацию при обновлении темы
Редиректы на сервереСтарые URL после переездаНужно аккуратно вести карту соответствий

Пример: точечно закрыть старый шаблон от индексации

Если у вас есть отдельный шаблон для устаревшей версии страницы, можно добавить условие в functions.php и вывести noindex только там, где это действительно нужно. Пример ниже рассчитан на конкретную страницу по slug:

add_action('wp_head', function () {
    if (is_page('staryy-shablon')) {
        echo '<meta name="robots" content="noindex,follow">' . "\n";
    }
});

Если страница уже не нужна совсем, лучше не оставлять её в состоянии «noindex,follow» бесконечно. После того как поисковик переобойдёт URL, можно заменить страницу на 301-редирект или удалить её с кодом 410, если это оправдано.

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

После правок не ограничивайтесь визуальной проверкой. Нужно убедиться, что поисковик видит именно то, что вы задали.

  • откройте старый URL в браузере и проверьте код ответа;
  • посмотрите исходный HTML на наличие noindex и canonical;
  • проверьте, что старый URL ведёт на нужную новую страницу через 301;
  • в Search Console отправьте на переобход ключевые URL;
  • сравните, не осталось ли старых адресов в sitemap и внутренних ссылках.

Если страница закрыта правильно, она не должна продолжать конкурировать с новой версией. Если редирект настроен верно, старый URL не должен отдавать контент старого шаблона.

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

Закрыли URL в robots.txt и ждут удаления из индекса

Это частая ошибка. Если страница уже в индексе, запрет в robots.txt не убирает её автоматически. Поисковик может перестать её обходить, но запись в индексе останется. Для удаления нужен noindex, редирект или удаление страницы.

Поставили noindex, но оставили внутренние ссылки

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

Сделали 302 вместо 301

Временный редирект для постоянного переезда — плохая идея. Для старых URL после смены шаблона нужен именно 301, если адрес действительно заменён новым.

Переусердствовали с массовым noindex

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

Что проверить в первую неделю после переезда

Сразу после внедрения изменений полезно держать короткий чек-лист:

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

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

После смены темы не стоит оставлять старые шаблоны и экспериментальные куски кода в functions.php. Удаляйте временные правки, как только они выполнили задачу. Чем меньше условной логики в теме, тем проще поддерживать сайт и тем меньше риск случайно закрыть важные страницы от индексации.

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

Если после переезда остались старые версии страниц, задача обычно решается не одной настройкой, а связкой из трёх действий: корректный canonical, точечный noindex или 301, и проверка внутренних ссылок. Именно эта последовательность обычно даёт предсказуемый результат без побочных эффектов.

Как отключить XML sitemap в WordPress из robots.txt и не потерять индексацию
02.09.2026
Как закрыть старые URL после смены ЧПУ в WordPress и не потерять трафик
13.09.2026
Как отключить архив авторов в WordPress без потери индексации
24.08.2026
Как закрыть открытые архивы таксономий в WordPress без потери индексации
06.09.2026
Как отключить XML-RPC в WordPress без поломки входов и синхронизации
17.08.2026