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

Авто 08.08.2019
Авто

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

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

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

Подобный тег будет полезным в основном при использовании различных движков (phpBB, IPB , WordPress, и т.д., напр. сайту ipbskins.ru – разработка дизайна сайта на IPB , приходится использовать длинный robots.txt в целях избежания дублированного контента), создающих множество похожих страниц, например, это могут быть страницы:

печатной версии статьи:
http://site.ru/article01.html?print=true
текстовой версии статей для моб. телефонов:
http://site.ru/lofiversion/article01.html
дублированные из-за недостатка движка:
http://site.ru/articles/?id=1&category=new
http://site.ru/articles/?id=1&tag=keyword
и ряд других…

Этот стандарт может быть адаптирован любой поисковой машиной при индексации сайта.

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

Ответы на некоторые популярные вопросы по тегу:

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

Могу ли я использовать относительный путь для указания canonical, например так: ?
Да, относительные пути распознаются также, как и в обычном теге . Даже если вы введете тег с ссылкой на документ, тогда относительные пути будут считаться в соответствии с базовым URL .

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

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

Что если rel=“canonical” ещё не проиндексирован?
Мы стараемся достучаться до канонического URL быстро. Как только мы его проиндексируем, тогда сразу же перерассмотрим подсказку rel=“canonical”.

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

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

Может ли этот тег для ссылки предложить канонический адрес на совершенно другом домене?
Нет. Чтобы мигрировать на другой домен, более подходящ. В настоящее время Google поддерживает канонизацию внутри поддоменов или внутри одного домена. Таким образом, владельцы сайтов могут указать www.example.com вместо example.com или help.example.com , однако, не могут указать example.com вместо example-widgets.com .

Звучит интересно, но могу ли я увидеть пример?
Да, wikia.com помогла нам, как трастовый тестер. Например, вы замтетите, что исходный код по адресу http://starwars.wikia.com/wiki/Nelvana_Limited содержит rel=canonical http://starwars.wikia.com/wiki/Nelvana .

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

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

1. Помимо избавления от естественного дублированного контента (из-за недостатка движка), мы также избавляемся от дублированного контента искусственного, когда конкуренты нам пытаются насолить, добавляя в страницы с произвольными параметрами в URL .

2. Теперь нет надобности использовать robots.txt для запрета индексации таких страниц, как “печатная версия” и других дубликатов (напр. в WordPress нужно было закрывать путь /teg/) и угождать каждому поисковику отдельно (есть общие стандарты для robots.txt, но есть также и ряд особенностей работы каждого поисковика с этим файлом, поэтому мы раньше не могли предусмотреть запрет индексации некоторых страниц сразу для всех ботов).

3. Мы теперь имеем хороший инструмент для ускорения индексации сайта 🙂

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

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

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


Аллан Скотт (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" доступна на формуе

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

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

С помощью этого атрибута можно довольно быстро устранить проблемы дублирующего контента.

Как прописать rel= «canonical»?

На странице сайта (основной способ)

Чтобы для текущей страницы указать ее каноническую ссылку, то в секции нужно прописать следующее:

"http://site.com/canonical-link.html"/>

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

Через xml-карту сайта

Для каждой страницы в xml-карте сайта вы можете прописать её каноническую ссылку. Но, в данном случае, поисковые системы могут проигнорировать данные рекомендации.

Через ответ сервера (лучше всего для не html документов)
Link: ; rel="canonical".

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

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

Если вы точно знаете в каком случае у вас на сайте появляются дубли

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

Когда сложно или невозможно реализовать 301 редирект

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

Несколько страниц для одной серии продуктов

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

При разных сортировках товаров в каталоге

Если на вашем сайте товары можно сортировать разными способами и параметр сортировки указывается в урле:

При создании страницы каталога со всеми продуктами
Страница печати

Если печать страниц на сайте реализована через дополнительный параметр, например,

При использовании партнерской программы у вас на сайте

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

Поэтому, для всех страниц на которые стоят партнерские ссылки

Кроме этого, вы можете указать Google все не нужные параметры для индексации через Параметры URL (в Google Webmasters раздел Сканирование). В данном случаем необходимо указать параметр partner, как такой, что не изменяет содержимое страницы.

Для склейки индексного файла каталога

Важно проверять, чтобы файлы в каталоге типа index.html не приводили к дублям: это может произойти, когда открыты для индексации 2 таких адреса http://site.com/dresses/ и http://site.com/dresses/index.html. В таких случаях, для решения данной проблемы, легче всего в файле http://site.com/dresses/index.html прописать такую каноническую ссылку

При использовании одинакового контента на разных доменах или разных языковых версиях

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

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

Использование на страницах пагинации

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

Каноническая ссылка не является индексируемой
  • страница отдает 200 код сервера
  • на странице нет запрета индексации (через мета тег robots и noindex)
Несколько ссылок rel=canonical с одной страницы

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

Разные канонические URL

Следите за тем, чтобы всегда указывать одни и те же канонические страницы при разной реализации (например, через xml-карту сайта и через rel=”canonical” на самой странице).

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

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

Тогда поисковые системы будут просто игнорировать данные инструкции.

Проверка использование rel=»canonical» на своем сайте

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

После индексации вашего сайта эта программа в удобном для вас виде предоставит вам полную информацию по всем страницам

  • на которых стоит атрибут rel=”canonical” и на какие именно страницы он указывает
  • на какие страницы сайта проставлены канонические ссылки
  • какие страницы без атрибута rel=”canonical”

Вся эта информация будет на вкладке Directives

Следует не забыть провести некоторые дополнительные настройки:

1. Убедиться, что на вкладке Basic выставлена галочка напротив Crawl Canonical

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

2. На вкладке Advanced установлена галочка напротив Respect 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.


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

Наверх