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

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

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

Как понять, что у вас именно дубли, а не просто просадка трафика

Сначала стоит проверить, действительно ли проблема в повторяющихся страницах. На практике это видно по нескольким признакам: в поиске всплывают не те URL, в отчётах Search Console растёт число страниц без кликов, а один и тот же текст открывается по разным адресам. Часто это бывает после смены структуры постоянных ссылок, установки SEO-плагина или переноса сайта.

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

  • страницы с одинаковым title и description;
  • записи, доступные и с /category/, и без него;
  • архивы тегов, авторов и дат, которые повторяют контент записей;
  • страницы с параметрами в URL, например ?amp, ?replytocom, UTM и внутренними фильтрами;
  • версии с www и без www, с http и https, со слешем и без него.

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

Диагностика проблемы: где искать дубли в WordPress

Самый быстрый путь — посмотреть сайт глазами поисковика и глазами редактора. Для этого не обязательно сразу лезть в код. Сначала проверьте, какие типы страниц вообще доступны и индексируются.

Проверка через Search Console и поиск по сайту

В Google Search Console откройте отчёт по страницам и посмотрите, какие URL попадают в индекс. Если там есть архивы, служебные страницы, дубли пагинации или параметры, это уже сигнал. Дополнительно можно использовать поиск вида site:example.ru и вручную сравнить несколько похожих URL.

Проверка на уровне WordPress

В админке посмотрите:

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

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

SELECT post_title, COUNT(*) AS cnt
FROM wp_posts
WHERE post_type = 'post' AND post_status = 'publish'
GROUP BY post_title
HAVING cnt > 1
ORDER BY cnt DESC;

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

Что делать: пошаговое решение без лишнего риска

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

Шаг 1. Выберите каноническую версию

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

Шаг 2. Настройте редиректы там, где URL больше не нужен

Если страница должна исчезнуть окончательно, лучше отправить её на релевантную замену, а не отдавать 404 без причины. Для простых случаев достаточно редиректа в .htaccess или на уровне сервера. Пример для Apache:

Redirect 301 /old-page/ https://example.ru/new-page/

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

Шаг 3. Закройте служебные архивы от индексации

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

add_filter('wp_robots', function (array $robots) {
    if (is_author() || is_date() || is_attachment()) {
        $robots['noindex'] = true;
        $robots['nofollow'] = true;
    }
    return $robots;
});

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

Шаг 4. Уберите дубли из sitemap

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

Шаг 5. Проверьте canonical

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

Когда лучше использовать плагин, а когда код

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

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

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

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

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

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

  • старый URL отдаёт 301, а не 200;
  • закрытые архивы возвращают noindex в мета-тегах или заголовках;
  • в sitemap больше нет лишних страниц;
  • canonical указывает на основную версию;
  • страница открывается без циклов редиректа и без ошибок 404.

Как быстро проверить код ответа

Самый простой способ — посмотреть заголовки ответа:

curl -I https://example.ru/old-page/

Для старого адреса должен быть 301 Moved Permanently и новый Location. Для закрытых архивов проверьте, что страница не попадает в индекс и не возвращается в sitemap после следующей генерации.

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

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

Закрыли страницу в robots.txt, но она всё равно в индексе

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

Поставили 301 на главную для всех дублей

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

Удалили архивы, но не обновили внутренние ссылки

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

Оставили дубль в sitemap

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

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

Перед массовыми правками сделайте резервную копию базы и файлов. Особенно если вы трогаете .htaccess, правила редиректов или фильтры wp_robots. Ошибка в одном символе может сделать сайт недоступным или закрыть от индексации весь проект.

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

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

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

Автоматическое создание резервных копий в WordPress с помощью плагинов и кода
27.09.2026
Как добавить собственный тип записи в WordPress
12.09.2026
Как создать многоуровневую навигацию в WordPress с помощью ABC Pagination
12.09.2026
Как избежать проблем с просмотром видео в WordPress: практические решения и плагины
02.10.2026
Как удалить пустые термины в WordPress: практическое руководство
20.09.2026