Как убрать дубли title, description и canonical в WordPress

Дубли title, description и canonical в WordPress обычно появляются не из-за одной ошибки, а из-за наложения нескольких источников метаданных: тема выводит свои теги, SEO-плагин добавляет свои, а где-то ещё подключён шаблонный код или кеш отдает старую версию страницы. В результате в HTML можно увидеть по два <title>, несколько meta name="description" или конфликтующие link rel="canonical".

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

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

Сначала проверьте исходный HTML, а не визуальный вывод в браузере. Откройте страницу и посмотрите view-source: или используйте инструменты разработчика. Ищите такие признаки:

  • в документе больше одного <title>;
  • несколько meta name="description";
  • два и более link rel="canonical";
  • canonical указывает на URL с параметрами, хотя должна быть чистая версия;
  • в коде есть теги от темы и от SEO-плагина одновременно.

Быстрая диагностика через поиск по исходнику

Если у вас есть доступ к серверу или локальной копии сайта, проще всего найти источник по шаблонам в теме и плагинах. Для WordPress это обычно header.php, файлы SEO-плагина и кастомные вставки в functions.php.

grep -Rni "rel=\"canonical\"\|name=\"description\"\|<title>" wp-content/themes wp-content/plugins

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

Откуда обычно берутся дубли

На практике источников немного, и почти всегда это один из следующих сценариев:

Источник Что происходит Что делать
Тема В header.php вручную добавлены title, description или canonical Убрать ручной вывод и оставить один источник
SEO-плагин Плагин генерирует мета-теги, а тема делает то же самое Отключить дублирующий вывод в теме или в плагине
Кастомный код Функции в functions.php или mu-plugin добавляют теги через wp_head Найти хук и убрать лишний callback
Кеш После правок в HTML остаются старые теги Очистить кеш страницы, объекта и CDN

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

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

1. Оставьте один источник мета-тегов

Если у вас установлен SEO-плагин, он должен быть единственным источником title, description и canonical. В теме не должно быть ручного дублирования. Проверьте header.php и шаблоны, где могли остаться старые вставки.

Типичный фрагмент, который нужно убрать, если его уже заменяет SEO-плагин:

<title><?php wp_title(); ?></title>
<meta name="description" content="...">
<link rel="canonical" href="...">

В современных темах title должен формироваться через add_theme_support('title-tag'), а не вручную. Тогда WordPress и SEO-плагин не будут спорить между собой.

add_action('after_setup_theme', function () {
    add_theme_support('title-tag');
});

2. Проверьте, не добавляет ли canonical ваша тема или плагин

Если canonical выводится дважды, ищите вызовы на хуке wp_head. Часто проблема сидит в самописном коде, который когда-то добавили «временно» и забыли убрать.

add_action('wp_head', function () {
    if (is_singular()) {
        echo '<link rel="canonical" href="' . esc_url(get_permalink()) . '" />' . "\n";
    }
}, 1);

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

3. Уберите дубли в архивных и служебных страницах

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

Если у вас есть кастомная генерация canonical, проверьте логику для:

  • страниц /page/2/ и дальше;
  • страниц с параметрами фильтрации;
  • поисковой выдачи по сайту;
  • страниц автора и архивов без контента.

4. Очистите кеш после правок

После удаления дублей обязательно сбросьте кеш: плагин кеширования, серверный кеш, объектный кеш и CDN, если он есть. Иначе вы будете проверять старый HTML и решите, что правка не сработала.

Если используете WP-CLI и у вас есть доступ к окружению, можно очистить кеш сайта командой плагина, но конкретная команда зависит от установленного решения. Универсальный способ — очистка через интерфейс плагина и повторная проверка исходника страницы.

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

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

Подход Когда подходит Минус
Настройка SEO-плагина Плагин уже управляет мета-тегами Не решит проблему, если дубль идёт из темы
Правка темы Тема выводит лишний HTML в header.php При обновлении темы правки могут потеряться
mu-plugin Нужно отключить лишний хук без правки темы Требует аккуратного тестирования

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

Проверка должна быть не только визуальной. После правок откройте исходный код страницы и убедитесь, что:

  • в документе ровно один <title>;
  • description выводится один раз или не выводится вовсе, если вы сознательно отказались от него на конкретном типе страниц;
  • canonical один и ведёт на нужный URL без лишних параметров;
  • в HTML нет старых тегов из кеша;
  • на страницах пагинации canonical соответствует вашей SEO-логике.

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

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

Оставили ручной title в теме и включили title-tag

Это классическая причина двойного title. Если тема уже поддерживает title-tag, ручной вывод в header.php нужно удалить. Иначе WordPress и шаблон будут конкурировать.

Отключили canonical в плагине, но забыли про тему

Иногда canonical выводится не SEO-плагином, а самописной функцией в теме. Внешне кажется, что «плагин всё ещё мешает», хотя проблема уже в другом месте. Проверяйте исходный код и поиск по проекту, а не только настройки плагина.

Проверили страницу до очистки кеша

Если на сайте есть page cache или CDN, старый HTML может жить дольше, чем вы ожидаете. Это особенно заметно после правок canonical: в браузере всё ещё старый адрес, хотя в коде уже всё исправлено на сервере.

Сломали canonical на страницах пагинации

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

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

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

Ещё один полезный приём — держать SEO-логику в одном месте. Чем больше разрозненных вставок в wp_head, тем выше шанс получить конфликт после очередного обновления темы или плагина. Если на сайте уже накопились дубли, иногда проще сначала провести чистку шаблонов и служебных настроек, а потом уже настраивать мета-теги. В таких задачах помогает и аудит лишних SEO-элементов, и удаление повторяющихся блоков в теме. Если нужен инструмент для этого класса задач, можно посмотреть Clearfy Pro: https://wpshop.ru/plugins/clearfy?utm_source=wpfront.ru&utm_medium=article&utm_campaign=wordpress-duplicate-title-description-canonical.

И последнее: не меняйте canonical массово без карты URL. Сначала зафиксируйте, какие страницы должны индексироваться, какие — быть noindex, а какие — склеиваться. Иначе можно убрать дубли, но потерять нужные страницы из поиска.

Как убрать дубли title, description и canonical в WordPress
16.09.2026
Почему REST API WordPress возвращает 403 при запросах с Authorization header
12.09.2026
WordPress XML-RPC 403 и 404: как отключить, проверить и не сломать доступ к сайту
20.09.2026
×
Прокачай свой сайт WordPress!

WordPress

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

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