Тег canonical поможет спастись от дублированного контента. Когда использовать атрибут rel=»canonical», некоторые распространенные сложности с реализацией

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

Каноническую страницу легко указать поисковым системам в заголовке страницы, а именно в разделе head документа. Для этого нужно поместить следующий HTML код в head раздел каждого документа, являющегося неканоническим:

Если у Вас есть доступ к HTTP заголовкам, например, через htaccess или PHP, то Вы можете установить канонический URL для файлов, которые не имеют HTML кода, в частности, для PDF, DOC. Для этого используйте код:

Link: ; rel=»canonical»

Случаи, когда rel=»canonical» не работает

Атрибут rel=»canonical» используется поисковыми системами, как подсказка со стороны вебмастеров, какая страница является основной. В тоже время данный атрибут может отработать некорректно. Например, в следующих случаях:

  • Если указать URL канонической страницы страницу отдающую 404 код, то поисковая система будет искать другой актуальный адрес.
  • При взломе сайта Google и Яндекс могут посчитать, что злоумышленники поставили фальшивые канонические адреса и в таком случае также их не учитывать.
  • Если Вы разместили конструкцию внутри тега BODY или в заголовке head при отсутствии закрывающего тега .

Случаи, когда rel=»canonical» можно применять

Как я писал выше, Вы должны использовать rel=»canonical» на страницах, которые являются дубликатами или очень похожими на основную (каноническую). Если у вас есть две похожие страницы, но не идентичные, порой имеет смысл изменить одну из них, чем делать канонической.

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

Правильное применение rel=»canonical» будет в следующих случаях:

  • Сайты с динамическими URL. Можно использовать данный атрибут для определения предпочтительного URL.
  • В коммерческих сайтах, в первую очередь интернет-магазинах, когда клиенты меняют порядок сортировки, важно чтобы получившийся при этом url не был проиндексирован.
  • При публикации синдицированного контента или дублированного внутри сайта на разных страницах. Важно с помощью rel=»canonical» правильно указать первоисточник.

Когда применять rel=»canonical» не стоит

  • Самая главная ошибка, когда используют данный атрибут при смене URL структуры сайта. На старых документах ставят rel=»canonical» на новые. А это неправильный подход. В таких случаях единственно правильным решением будет использование 301 редиректа.
  • Второй по важности ошибкой является неправильное использование данного атрибута на страницах пагинации. Например, многие указывают rel=»canonical» на страницах пагинации на главную страницу сайта, что является ошибкой. В таком случае оптимальным вариантом использование rel=prev/next.

Аллан Скотт (Allan Scott), инженер программного обеспечения команды индексирования Google, перечислил в блоге Webmaster Central пять наиболее распространенных ошибок, которые допускают вебмастера при использовании атрибута rel="canonical" , а также дал несколько важных советов по применению данного тега.

Прежде всего, представитель поиска напомнил специалистам отрасли о том, что атрибут канонической страницы чётко указывает поисковым роботам, на какой именно экземпляр из набора страниц с похожим содержанием ссылаются дубликаты. При этом, дополнительные свойства адреса (к примеру PageRank) и связанные сигналы (качество входящей ссылочной массы) также переносятся с дублированных страниц на каноническую. В настоящее время атрибут rel="canonical" поддерживают все ведущие западные поисковые системы: Yahoo!, Bing, и Google.

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

Чтобы избежать подобных ошибок, специалисты Google рекомендуют придерживаться следующих общих правил при проставлении атрибута rel="canonical":

  • Большинство дублированных страниц должно содержать ссылки на канонический адрес.
  • Важно убедиться в том, что страница, на которую ссылаются при помощи атрибута rel="canonical" существует, а ее URL — правильный (проверьте не возвращает ли сервер ошибку 404).
  • Необходимо убедиться в том, что каноническая страница не закрыта для индексации поисковыми роботами.
  • Важно четко понимать, какую страницу вебмастер хочет видеть в результатах поиска, именно ее и следует указывать как каноническую (к примеру, если сайт содержит набор страниц с одной и той же моделью товара, различающегося по цвету — целесообразно в качестве канонической указать страницу с наиболее популярным цветом).
  • Не стоит забывать о включении атрибута rel="canonical" в раздел документа кода HTML.
  • Важно избегать использования атрибута rel="canonical" более одного раза для одной страницы. В противном случае поисковик просто-напросто проигнорирует указание атрибута.

Ошибка 1. Атрибут rel="canonical" использован для первой страницы серии пагинации :

Представьте, что статья на вашем сайте имеет несколько страниц:

  • example.com/article?story=cupcake-news&page=1
  • example.com/article?story=cupcake-news&page=2
  • и т.д.

В данном случае страницы 2 и 3 не являются дубликатами, а значит и применение атрибута rel="canonical" для указания в качестве канонической первой страницы документа будет ошибкой. Данная ошибка может повлечь за собой выпадение страниц 2 и 3 из индекса.

Кроме того, при разбиении документа на страницы важно грамотно применять HTML-атрибуты rel="next" и rel="prev" , позволяющие указать на взаимосвязь между отдельными URL.

Безусловно, rel="canonical" можно использовать как для абсолютных, так для относительных ссылок, однако Google рекомендует использовать абсолютные ссылки для минимизации возможных ошибок. Если в документе указана базовая ссылка, то все относительные ссылки будут вычисляться на ее основе.

Однако в случаях, когда абсолютные ссылки на каноническую страницу по ошибке записываются как относительные ( вместо http://example.com/example.com/cupcake.html ), алгоритмы могут проигнорировать то, что данная страница была указана в качестве канонической.

Ошибка 3. Если каноническими назначено несколько страниц из набора с похожим содержанием, или атрибут rel="canonical" использован по ошибке :

Часто специалисты Google наблюдают следующую ситуацию: вебмастер копирует шаблон страницы, забывая при этом изменить значение атрибута rel="canonical"

Если вы используете шаблоны - не забывайте проверять, не был ли случайно скопирован атрибут rel="canonical".

Еще одна ошибка вебмастеров, когда каноническими назначается несколько страниц из набора с похожим содержанием. Часто это происходит из-за использования различных плагинов на странице. Код плагина по ошибке встраивается в атрибут rel="canonical".

Важно понимать, что в обоих случаях алгоритмы Google распознают применение атрибута rel="canonical" как ошибочное, и не учтут его использование при индексации.

Ошибка 4. Одна из категорий целевой страницы ссылается при помощи атрибута rel="canonical" на избранную статью :

При таком подходе в индекс попадет только страница со статьёй, сама же страница категории не будет проиндексирована.

Ошибка 5. Атрибут rel="canonical" используется в разделе документа :

Как уже говорилось выше, атрибут rel="canonical" должен быть включен в раздел документа кода HTML, при этом он не должен попадать в раздел документа . В противном случае алгоритмы Google не будут учитывать использование данного тега, особенно если он будет показываться обычного текста, или тегов, которые мы обычно присутствуют в разделе .

Дополнительная информация, касающаяся применения атрибута rel="canonical" доступна на формуе

В идеале должна быть одна версия для каждой страницы. Но на деле часто бывает, что одинаковый контент присутствует в нескольких местах одного сайта, а также на других ресурсах. Чтобы решить проблему дублирующего контента было разработано решение под названием «элемент канонической ссылки», больше известное как атрибут rel=»canonical» .

Как rel=»canonical» может помочь продвижению?

Этот атрибут устраняет проблемы, связанные с дублирующимся контентом. Устанавливает предпочтительную версию страницы и передает сигналы, такие как ссылки, на эту версию страницы. Объединяет дубликаты контента, которые могут появляться по следующим причинам:

  • HTTP и HTTPS
  • одни и те же материалы в субдомене www и по обычным адресам http
  • параметры и многоаспектная навигация
  • идентификаторы сессий
  • завершающий слэш
  • индекс/страницы по умолчанию
  • версии альтернативной страницы, такие как m. или AMP-страницы или версии для печати

Где прописать атрибут rel=canonical

Большинству веб-мастеров известно, что атрибут добавляется в тег head:

Но не все знают, что canonical может также отправляться в заголовок HTTP:

HTTP/1.1 200 OK
Link: ; rel=»canonical»

Известно, что Google отдает предпочтение HTTPS-страницам в качестве канонических, а не их аналогам HTTP; исключение - случаи, когда присутствуют противоречивые сигналы, согласно справке Search Console:

  • Страница HTTPS имеет недействительный сертификат SSL.
  • Страница HTTPS содержит небезопасные зависимости.
  • Доступ к странице HTTPS запрещен в файле robots.txt, а к странице HTTP – нет.
  • Страница HTTPS выполняет переадресацию на страницу HTTP.
  • Страница HTTPS указывает на страницу HTTP с помощью атрибута rel=»canonical».
  • Страница HTTPS содержит метатег noindex для роботов.

Редкий случай, но все же возможный, когда из-за ошибок в коде раздел заголовка заканчивается прежде, чем это должно быть. При этом canonical может быть в теле контента, где поисковая система его никак не ожидает найти. Еще хуже, когда большинство инструментов (таких как Screaming Frog или Deep Crawl) эту ошибку не фиксируют. Проблему можно установить только с помощью программного интерфейса DOM (объектная модель документа) - например, когда используется Inspect для Chrome Dev Tools

Рассмотрим канонический атрибут в Home Depot на скриншоте ниже. Можно видеть, что раздел заголовка закончился, и часть контента, которая при рассмотрении источника находится в заголовке, попадает в тело, когда рассматривается DOM.

Взаимодействие атрибута canonical с другими

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

Другие способы применения canonical

Атрибут canonical можно использовать для альтернативных версий сайта (мобильная и AMP-версия). Для не нужно специально менять эти атрибуты.

Здравствуйте, друзья!

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

Так, что внимательно вникаем и, если что-то непонятно, то пишите в комментарии. Темой обсуждения является животрепещащий атрибут rel="canonical", который призван для предотвращения дублированного контента и упрощения индексации поисковым системам.
Пройдемся по каждому вопросу по порядку, чтобы сложилась целостная картина.

Принцип работы атрибута rel="canonical"

Атрибут или тег canonical (как еще называют) используется для того, чтобы дать поисковым системам понять, какой адрес правдивый и является главным для каждой страницы на сайте.

Rel="canonical" - это один из важнейших моментов в оптимизации любого сайта, который позволяет решить проблему дублированного контента. Особая нужда в его использовании появляется при использовании различных дижков для создания сайтов, таких как: WordPress, phpBB и других.

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

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

Если взять сайт на WordPress, то при включенной функции древовидных комментариев доступна кнопка "Ответить" под каждым комментом.

Она делает адрес совершенно другим, а вот контент никуда не изменяется. Происходит явное дублирование контента, что очень плохо.

Одним из самых действенных способов предотвратить появление такой страницы в индексе поисковых систем является добавления на все подобные страницы атрибута rel="canonical", который укажет, что только статья является предпочтительным документом для индексации, а все остальные в индекс брать не нужно.

Как прописывать rel="canonical"

На различных движках (например, WordPress) добавление атрибута rel="canonical" происходит в автоматическом режиме. Также атрибут добавляется с помощью различных SEo плагинов.

Если же хотим добавить canonical в ручном режиме, то в область ресурса стоит добавить следующую строчку.

< link rel = "canonical" href = "адрес страницы" / >

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

Если взять в пример ситуацию выше с адресами страниц, создаваемые кнопками ответа на комментарии на WordPress, то в исходном коде каждой такой страницы можно видеть атрибут rel="canonical".

Как видим, канонический адрес указывает на основную страницу, когда исходный код я просматривал по адресу:

http://i-am-kulinar.ru/poleznoe-obzory-intervyu/ne-proigral-nikto.html?replytocom=5499#respond

http : //i-am-kulinar.ru/poleznoe-obzory-intervyu/ne-proigral-nikto.html?replytocom=5499#respond

Такая страница благодаря атрибуту канонических адресов в индекс не попадет. Поисковики прекрасно примут во внимание ваше указание.

Рассмотрев основной принцип работы данного атрибута, можно перейти к следующему вопросу материала.

В каких случаях использовать?


Теперь стоит рассмотреть основные ошибки, которые могут допускаться и их стоит избегать.

Основные ошибки


Когда разобрали основные ошибки, которых стоит избегать и которые чаще всего употребляются, стоит упомянуть плагины WordPress и некоторые моменты работы с атрибутом rel="canonical" на том движке.

Сanonical в плагинах WordPress

Начнем с одного из самых популярных решений на рынке - all in one seo pack. Плагин хорош и добавляет данный атрибут в код каждой страницы, удаляя при этом стандартный canonical, создаваемый средствами движка. Для этого стоит включить соответствующую настройку.

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

Первый момент касается неправильной работы атрибута со страницами пагинации. Выше я писал, что каждая страница должна быть каноничной. Плагин же в rel="canonical" вписывает адрес на первую страницу (на главный адрес омена) из всего списка пагинации.


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

Вторым моментом является косяк, который я описывал в соответствующей статье (). Он может помочь нашим конкурентам добавить нежелательные страницы в индекс с помощью инструментов addurl в поисковый индекс. Данный косяк конечно же исправляется и хорошо, что средствами самого же плагина, активировав определенную настройку "No Pagination for Canonical URLs".

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

Вторым плагином на обозрении стоит Platinum seo pack. К страницам пагинации он относится с уважением. Проблема заключается лишь в дублировании rel="canonical". Просмотрев исходный код страницы, можно увидеть, что при включенной функции добавления атрибута, не убирается стандартный атрибут, выводимый движком.


В этой статье мы разберём, как и для чего нужно использовать атрибут rel=“canonical”, а также на конкретных примерах опишем, когда его лучше применять.

Что такое rel canonical и для чего он нужен?

Атрибут rel=“canonical” - один из способов борьбы с дублирующимся контентом. Он размещается на любой HTML-странице между тегами . Поисковые роботы начинают считать страницу, указанную в атрибуте rel=“canonical”, приоритетной (канонической). Каноническая страница будет отображаться в поиске, на неё перейдут ссылочный вес и другие характеристики страниц с одинаковым содержанием.

Таким образом, если на вашем сайте есть идентичный или очень похожий контент, доступный по разным URL, с помощью атрибута rel=“canonical” можно указать тот URL, который является предпочтительным для индексации.

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

1. Для предупреждения появления различных дублей. Например:

  • страниц сортировок: /*sort, asc, desc, list=*;
  • дублей из-за UTM-меток: *utm_source=, /*utm_campaign=, /*utm_content=, /*utm_term=, /*utm_medium=;
  • других страниц c GET-параметрами в URL;
  • дублей в результате особенностей работы CMS (движка).

В этом случае нужно добавить атрибут rel=“canonical” на все статические страницы сайта. Например, для страницы https://site.ru/category-1/page-2, rel=“canonical” будет выглядеть следующим образом:

href=“https://site.ru/category-1/page-2” />

2. Для доступных по разным URL страниц с очень похожим контентом.

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

В этом случае нужно указать со всех страниц rel=“canonical” на основную, приоритетную страницу.

В таком случае на каждой из страниц пагинации нужно указать канонической страницу «Показать всё».

Например, для страницы https://site.ru/category-1/page-2 нужно прописать канонический URL:

ru /category-1/show-all” />

Как указать основной URL при помощи атрибута rel=“canonical”?

Прописать между тегами любой HTML-страницы

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

Например, для страницы https://site.ru/*utm_content= канонической будет https://site.ru/.

Для получения такого результата, на странице https://site.ru/*utm_content= мы указали тег:

ru /” />

Важно!
Чтобы снизить вероятность ошибки в элементах link, после атрибута rel=“canonical” используйте абсолютные, а не относительные ссылки.

В файле Sitemap

В XML-карте сайта вы можете прописать канонический (основной) URL для любой страницы.

Важно!
Атрибут rel=“canonical” - это рекомендация для поисковой системы, а не правило. В этом случае ПС могут проигнорировать их.

В заголовке HTTP

Лучше всего использовать для документов не HTML-формата. Например, для файлов формата PDF.

В таком случае сервер, при запросе дублирующего файла, должен отдавать ссылку на файл-оригинал:

Link: ; rel=“canonical”

Важно!
Этот способ подойдёт, если у вас есть доступ к настройкам сервера. Не рекомендуется использовать для HTML-документов.

С помощью плагина

Для CMS существуют различные плагины, которые позволяют настроить канонический URL. Например:
— для WordPress можно настроить canonical с помощью Yoast SEO ;
— в OpenCart - реализовано в настройках CMS (нужно зайти в настройки товара и задать параметр SEO URL);
— для настройки атрибута canonical в Joomla (версии 3.х и выше) нужно включить в настройках CMS функцию SEF. После включения для технических страниц вида /index.php?option будет добавлен атрибут rel=“canonical” (с указанием URL на страницу с настроенным ЧПУ).

Как проверить правильно ли настроен rel=“canonical”?

Провести анализ можно специальной программой для SEO-анализа сайта - .

С помощью этой программы вы увидите:
— какие страницы на сайте без атрибута rel=“canonical”;
— на каких страницах стоит атрибут rel=“canonical”, и какие страницы являются для них каноническими;

Основные ошибки использования rel=“canonical”

— Канонический URL отдаёт 404 ошибку.
— Указанный канонический URL находится на другом домене или поддомене.
— Каноническая ссылка не является индексируемой.
— Использование rel=“canonical” со страниц пагинации на первую страницу.

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

Для страниц пагинации в качестве канонических нужно указывать эти же страницы.

Например, страница https://site.ru/category-1/page-2 должна содержать каноническую ссылку:

.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: