Если у одной и той же страницы в WordPress появляется несколько адресов, поисковик может увидеть их как дубли. В таких случаях помогает canonical: он подсказывает, какой URL считать основной версией. Это не магическая кнопка для роста позиций, а технический сигнал, который снижает путаницу при индексации и помогает собрать сигналы ранжирования в одном адресе.
На практике canonical нужен, когда страница доступна с параметрами в URL, через разные варианты слеша, в пагинации, в сортировках, фильтрах или когда один и тот же контент открывается по нескольким путям. В WordPress это встречается чаще, чем кажется, особенно на блогах, каталогах и сайтах с активной внутренней навигацией.
Что делает canonical и когда он действительно нужен
Canonical — это ссылка на предпочтительный адрес страницы, которую обычно размещают в секции <head> как <link rel="canonical" href="...">. Поисковые системы используют её как подсказку: если они видят несколько очень похожих страниц, то могут выбрать указанную вами основную версию.
Важно понимать границу применения. Canonical не удаляет дубли из индекса мгновенно и не запрещает обход других URL. Он помогает поисковику понять, какой адрес считать главным. Если страницы реально разные по смыслу, ставить на них один canonical нельзя: так вы сами склеите несвязанные URL и можете потерять часть трафика.
Canonical обычно нужен в таких ситуациях:
- страница открывается с UTM-метками и другими параметрами;
- один и тот же материал доступен с
/page/2/,?replytocom=или похожими служебными параметрами; - есть версии со слешем и без слеша, если сайт настроен неаккуратно;
- контент доступен по нескольким путям из-за особенностей темы, фильтров или плагинов;
- в интернет-магазине или каталоге один товар/запись имеет несколько почти одинаковых URL.
Как WordPress обычно формирует canonical
В стандартной установке WordPress сам выводит canonical для записей, страниц, рубрик и других архивов через ядро. Для большинства обычных сайтов этого достаточно. Проблемы начинаются не из-за отсутствия canonical, а из-за того, что тема, SEO-плагин или дополнительные плагины переопределяют его, дублируют или выводят некорректный адрес.
Если у вас установлен SEO-плагин, он часто берёт canonical на себя. Это нормально, но нужно проверить, что на странице выводится только один canonical и он указывает на правильный URL. Два разных canonical в одном документе — уже ошибка. Поисковик может проигнорировать оба или выбрать один из них по своему усмотрению.
Как проверить, есть ли canonical на странице
Проверка занимает минуту и не требует доступа к серверу. Откройте страницу в браузере, посмотрите исходный код и найдите строку с rel="canonical". Адрес в href должен совпадать с основной версией страницы, которую вы хотите продвигать.
Если удобнее, можно использовать инструменты для проверки URL в Google Search Console или любой SEO-краулер. Ищите три вещи: canonical присутствует, он один, и он ведёт на нужный адрес без лишних параметров.
Проверять стоит не только главную страницу записи, но и те варианты, где чаще всего появляются дубли: URL с параметрами, страницы пагинации, сортировки и фильтров. Именно там ошибки заметны быстрее всего.
Как настроить canonical в WordPress на практике
Если сайт работает на обычной теме и без сложной логики фильтров, чаще всего ничего дописывать вручную не нужно: WordPress или SEO-плагин уже выводят canonical. Настройка сводится к тому, чтобы убрать конфликтующие решения и задать правильный адрес там, где автоматике доверять нельзя.
1. Проверьте, не дублирует ли canonical SEO-плагин и тема
Если в теме есть собственный вывод canonical, а SEO-плагин тоже добавляет его в <head>, оставьте только один источник. Двойной canonical — частая проблема после установки новых шаблонов или миграции сайта. В таких случаях сначала смотрят исходный код страницы, а потом уже правят тему или настройки плагина.
Если вы редактируете тему вручную, делайте это в дочерней теме, иначе обновление перезапишет изменения.
2. Укажите canonical для страниц с параметрами
Когда одна и та же страница открывается с параметрами, canonical должен вести на чистый URL без этих параметров. Например, если пользователь пришёл по адресу с UTM-метками, основная версия всё равно должна быть без них.
Для ручной установки в шаблоне WordPress можно вывести canonical так:
<link rel="canonical" href="<?php echo esc_url( get_permalink() ); ?>" />Этот вариант подходит для записей и страниц, где основным адресом считается постоянная ссылка WordPress. Функция get_permalink() возвращает корректный URL текущей записи, а esc_url() безопасно выводит его в HTML.
Если canonical нужен для архивов или нестандартных страниц, адрес нужно подставлять осознанно, а не копировать get_permalink() везде подряд. Для архивов и страниц с фильтрами основным URL может быть не текущий адрес с параметрами, а чистая версия раздела.
3. Не ставьте canonical на разные страницы в один и тот же URL
Иногда встречается ошибка, когда все страницы категории, пагинации или фильтра отправляют canonical на первую страницу раздела. Это допустимо не всегда. Если страница пагинации содержит уникальные товары или записи, поисковику может быть полезно видеть её как отдельную страницу, а не склеивать с первой.
Здесь нет универсального правила для всех сайтов. Для новостных лент, блогов и каталогов решение зависит от структуры и целей индексации. Если не уверены, лучше проверить, как именно ваш SEO-плагин обрабатывает пагинацию, и не ломает ли он нужные страницы.
Когда canonical лучше задавать через SEO-плагин, а когда вручную
Если у вас типовой сайт на WordPress, удобнее управлять canonical через SEO-плагин. Это снижает риск ошибок и не требует правки шаблонов. Вручную canonical имеет смысл задавать только там, где автоматическая логика не справляется: нестандартные шаблоны, отдельные посадочные страницы, сложные фильтры, генерация URL на уровне темы или плагина.
| Ситуация | Что делать |
|---|---|
| Обычные записи и страницы | Проверить, что canonical выводится автоматически и не дублируется |
| Страницы с UTM и служебными параметрами | Canonical должен вести на чистый основной URL |
| Нестандартный шаблон или посадочная страница | Задать canonical вручную в теме или шаблоне |
| Фильтры, сортировки, параметры каталога | Проверить, не склеиваются ли разные по смыслу страницы в одну |
Если вы используете SEO-плагин и хотите уменьшить риск технических дублей, уместно посмотреть в сторону Clearfy Pro: он помогает управлять SEO-настройками и отключать лишние элементы, которые часто создают дубли в WordPress. Но сам canonical всё равно нужно проверять на конкретных страницах, а не полагаться на настройку «по умолчанию».
Типичные ошибки при настройке canonical
Самая частая ошибка — указывать canonical на несуществующий, редиректящий или закрытый URL. Поисковик может проигнорировать такую подсказку. Второй распространённый промах — ставить canonical на главную страницу сайта для всех материалов. Это почти всегда неправильно: каждая запись должна указывать на свою основную версию, а не на общий раздел.
Ещё одна проблема — конфликт между canonical и редиректами. Если страница уже жёстко перенаправляется 301-редиректом на другой адрес, canonical на старый URL не нужен. В такой схеме поисковику достаточно редиректа. Canonical полезен там, где страницы доступны одновременно и нужно выбрать основную версию без принудительного перенаправления.
Также не стоит использовать canonical как замену нормальной архитектуре URL. Если сайт генерирует десятки дублей из-за фильтров, параметров и неправильных ссылок, canonical лишь сгладит последствия. Основную причину всё равно лучше убрать в настройках темы, плагинов или структуры ссылок.
Как понять, что настройка сработала
После изменений снова откройте страницу и проверьте исходный код. В <head> должен быть один canonical с нужным адресом. Затем посмотрите, не меняется ли он на страницах с параметрами, в пагинации и в других вариантах URL, где вы ожидаете основную версию.
Если сайт уже добавлен в Google Search Console, полезно проверить URL через инструмент проверки страницы. Он показывает, какой canonical видит Google: указанный вами или выбранный поисковиком самостоятельно. Это особенно важно, если у страницы есть дубли и поисковик может не согласиться с вашей подсказкой.
Если Google выбирает другой canonical, обычно причина в одном из трёх факторов: страница слишком похожа на другую, canonical указывает на неподходящий URL или на сайте есть технические противоречия — например, разные внутренние ссылки ведут на разные версии одной страницы.
Для WordPress практический вывод простой: canonical нужно не просто «включить», а проверить на реальных URL сайта. Тогда он работает как полезная подсказка для поисковиков и не превращается в ещё один источник технических ошибок.