Канонические ссылки.

Авто 03.09.2019
Авто

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

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

Так, что внимательно вникаем и, если что-то непонятно, то пишите в комментарии. Темой обсуждения является животрепещащий атрибут 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". Просмотрев исходный код страницы, можно увидеть, что при включенной функции добавления атрибута, не убирается стандартный атрибут, выводимый движком.


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

Что такое каноническая ссылка

Дубли на сайте - страницы содержащие одинаковый контент , но имеющие разные адреса URL.

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

Для борьбы с дублями существует несколько способов:

  • robots.txt (все про robots.txt)
  • 301 редиректом (как сделать 301 редирект)
  • 404 страницей (404 ошибка - как правильно настроить)

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

Атрибут rel="canonical" - как пользоваться

Синтаксис rel="canonical"
... ...

Этот атрибут прописывается в заголовочных тегах . На всех одинаковых страницах (дублях) нужно указать адрес главной страницы (основной). Ссылки в href="" и есть канонические ссылки.

Например, если на сайте есть одинаковые страницы

site/catalog/tovar site/catalog/tovar?sort=abc site/catalog/tovar?sort=price

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

Тем самым показывая поисковой системе, что адрес основной страницы является - site/catalog/tovar .

Ответы на часто задаваемые вопросы

1. Стоит ли пользоваться каноническими ссылками?

Да, стоит. В рассмотренным примере, можно было пользоваться только каноническими ссылками или robots.txt. Можно совмещать эти два способа.

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

2. Что будет если канонически ссылки противоречат друг другу

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

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

Из справки Яндекса:

  • Документ по каноническому адресу недоступен для индексирования
  • В качестве канонического адреса указывается URL в другом домене или поддомене
  • Вы указали несколько канонических адресов
4. Можно ли использовать цепочку канонических URL

Например, /stranica/123 ссылается на /stranica/12, а эта в свою очередь на /stranica/. Поисковый робот может проигнорировать такую конструкцию.

5. Как правильно выбрать канонический урл

Сложно ответить и рассмотреть все варианты в паре предложений. Дадим общие рекомендации. На мой взгляд нужно смотреть на привлекательность URL (или точнее на ЧПУ). К примеру, если есть страница /cat/2323fdfds34.html и страница /cat/rel-canonical. Очевидно, что второй адрес гораздо предпочтительней.

Если все не так очевидно, то стоит выбирать менее вложенные статьи в каталоги и менее короткие URL. К примеру /cat/podcat/podpodcat/str.html лучше заменить на /cat/str.html

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

6. Можно ли ссылаться на другой домен канонической ссылкой

В атрибуте rel canonical можно использовать ссылки только внутри домена или поддоменов. Нельзя ссылаться на внешние сайты.

7. Можно ли делать rel canonical сама на себя

Да можно. Смысла в этом нету, но и плохого тоже.

Link 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” на основную, приоритетную страницу.
  3. На страницах пагинации, если в категориях сайта есть страницы «Показать всё». В таком случае на каждой из страниц пагинации нужно указать канонической страницу «Показать всё».Например, для страницы https://site.ru/category-1/page-2 нужно прописать канонический URL:ru /category-1/show-all” />

Как настроить канонические адреса rel=“canonical”?

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

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

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

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

ru /” />

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

В файле Sitemap

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

В заголовке 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 на страницу с настроенным ЧПУ).

301 редирект или rel=canonical

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

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

Канонические URL поддерживают большинство популярных поисковых систем: Google, Яндекс, Yahoo, Bing. Но вы все равно продолжаете видеть в индексе неканонические страницы вашего сайта? Первое что нужно сделать - проверить не была ли допущена ошибка при настройке rel=canonical. Ниже перечень наиболее распространенных ошибок:

Не индексируемая каноническая страница

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

  • страница отдает ответ сервера 200;
  • на странице не установлен мета-тег robots со значением noindex;
  • страница не закрыта от индексирования в файле robots.txt.

Разные канонические URL для одной страницы

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

Неправильное использование абсолютных ссылок

Распространенной ошибкой является указание канонической ссылки без протокола http:// или https:// , как показано на примере ниже:

< link rel = «canonical» href = «ururu.com/ololo.html» / >

< link rel = «canonical» href = «/ololo.html» / >

либо полный абсолютный путь с протоколом:

< link rel = «canonical» href = «http://ururu.com/ololo.html» / >

Использование тега вне блока head

Для корректного восприятия поисковыми системами, особенно это касается Google, тег rel=canonical должен находиться в рамках области head кода вашей страницы. Кроме того, данный тег стоит размещать настолько близко к началу HTML кода, насколько это возможно.

Канонические ссылки со страниц пагинации на первую страницу

Такое решение вполне дееспособно для борьбы с дублями. Однако, может негативно повлиять на индексацию страниц, ссылки на которые как раз и расположены на страницах пагинации. Например на странице http://example.com/dresses.html?page=3 расположены ссылки на 20 товаров - они не будут проиндексированы поисковым роботом непосредственно по ссылкам с этой страницы.

Тег canonical при использовании hreflang

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

Неканонические ссылки в sitemap.xml

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

Использование rel=canonical для неидентичных страниц

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

Канонические ссылки (атрибут тега link rel canonical) позволяет указать какую именно страницу из группы похожих или одинаковых страниц нужно индексировать. Полезность данного инструмента сложно переоценить и глупо игнорировать. Ведь именно к правильному толкованию страниц сайта поисковыми системами, в значительной степени и сводится SEO сайта. Тем более, что канонические ссылки поддерживаются практически любой современной CMS вроде Joomla или WordPress.

Не дублируйте контент и ставьте правильные ссылки!

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

Каноническую страницу легко указать поисковым системам в заголовке страницы, а именно в разделе 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.

Довольно таки часто, можно увидеть на разных сайтах, что на один и тот же контент посетители попадают с разных адресов (URL). Причиной этого явления, есть дублирование содержимого на сайте. Как правильно — это случается при использовании различных систем управления контентом (cms) на сайте. Для того, что бы избежать проблемы, компанией Google еще в 2009 году было предложено использование тега rel=”canonical” , для страницы с определенным url, которая будет участвовать в выдаче поисковых систем. Немного позже все поисковики поддержали идею.

Атрибут rel=»canonical»

Как использовать атрибут rel=”canonical”.

Допустим, вы нашли страницу на которую с разных url приходят посетители и хотите решить проблему с помощью атрибута. Для этого выбираем основной url, например: https://сайт/kak-samomu-raskrutit/page-one-1/ и теперь что бы сообщить об этом поисковой системе необходимо:

  • прописать атрибут rel=”canonical” для основной страницы и добавить на страницу тег в теле , вот пример:

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

Нужно использовать:

https://сайт/kak-samomu-raskrutit/page-one-1/

Не использовать:

/kak-samomu-raskrutit/page-one-1/

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

Что бы упростить жизнь вебмастерам и сеошника, рекомендую использовать плагины и модули для CMS, которые будут отслеживать ссылки с дублирование контента и автоматически прописывать канонические атрибуты. Для WordPress могу рекомендовать плагин , отлично справляется с задачей. Достаточно поставить галочку в пункте “Канонические URL’ы” и будут генерироваться канонические страницы автоматически.


Вам остается только проверять правильно и корректировать роботу плагина.

Примеры, где необходимо использовать rel=»canonical».

1. Сервер показывает одинаковое содержимое для протокола https и субдомена www , пример:

http://lonbo.com/page-one
https://loknbol.com/page-one
http://www.lonbo.com/page-one

Так, же для этого случая можно использовать .

2. Для сайтов, которые используют движки , при сохранении контента в разные разделы (категории).

https://сайт/category-1/page-one1/
https://сайт/category-2/page-one1/

3. Динамические URL . Как правило характерно для товаров интернет — магазинов, которые созданы в разные сессии или для разных поисковых запросов. Пример:

https://сайт/products?category=shapka&color=grey
https://сайт/head/grey?gclid=ABCD
https://сайт/shapka/grey/shapkaGrey.html

4. Распространение содержимого сайта(ресурса), на других сайтах , полностью или частично.

Общие правила при использовании атрибута rel=»canonical».

  1. Не используйте атрибута более одного раза, для одной страницы. Поисковик может просто проигнорировать его указание.
  2. Не забывайте включать rel=”canonical” в раздел кода HTML. Особенно проверяйте при использовании плагинов или модулей.
  3. Убедитесь, что каноническая страница открыты для индексации, в противном случае использование бесполезно.
  4. Страницы


Рекомендуем почитать

Наверх