Для чего нужен rel canonical и как его правильно указать
Уникальность страниц — один из ключевых факторов для продвижения. Любой SEO-специалист, хоть опытный, хоть начинающий, знает, что за идентичный контент поисковые системы могут наказывать санкциями. А выводить сайт из-под санкций ох как не просто. Поэтому лучше до этого вовсе не доводить.
Однако бывает такое, что контент не совсем повторяется. Например, в интернет-магазине на одной страничке включена фильтрация товаров по популярности, а на другой — по цене. Вроде как товар будет показываться разный, но страницы всё равно будут считаться одинаковыми. Здесь и пригодится тег rel="canonical". Он сообщает краулеру поисковика, какой адрес считать каноническим.
Канонической считается та страница, которая содержит основной URL. Тег rel="canonical" прописывают в коде дублирующих страниц и указывают в нём URL основной, чтобы робот понимал, какую версию стоит индексировать и ранжировать.
Для чего прописывать canonical?
Это требуется делать по нескольким причинам:
- чтобы не попасть под санкции из-за неуникального контента;
- правильно передавать ссылочную массу;
- чтобы выбрать страницу для ранжирования;
- не расходовать краулинговый бюджет на дубли.
Допустим, есть страница, открывающаяся по трём разным ссылкам:
https://qupe.ru/blog/?id=123
https://qupe.ru/blog/novosti/seo
https://qupe.ru/blog/seo
Нам нужно, чтобы в выдачу попадала версия https://qupe.ru/blog/novosti/seo. Именно она должна получать весь ссылочный вес и другие сигналы, то есть быть канонической. В такой ситуации на самой этой страничке никаких действий нам делать не надо, а вот в коде дублей необходимо прописать атрибут. Вставляем туда такую строчку:
Теперь поисковые системы знают, что https://qupe.ru/blog/?id=123 и https://qupe.ru/blog/seo — это неканонические страницы, соответственно, участвовать в ранжировании они не будут.
Попадают ли неканонические страницы в индекс?
Да, они могут оказаться в результатах выдачи. Однако такое может произойти только тогда, когда они релевантны поисковому запросу, а их содержимое на момент сканирования имело существенные отличия от основной версии.
Увидеть их можно в Яндекс.Вебмастере. Для этого необходимо открыть «Страницы в поиске» и найти строчки, в которых стоит отметка «Неканоническая».
Если с Яндексом всё понятно, то Google лёгкий путь выбирать не стал. С одной стороны, поисковая система говорит, что может признавать URL, который указан как канонический. Но с другой — она может просто это проигнорировать.
Всё потому, что тег rel="canonical" — всего лишь рекомендация, а не руководство к действию. Соответственно, если Google решит, что неканоническая страница более релевантна, он покажет именно её. Однако указывать атрибут всё же стоит, так как это снижает вероятность того, что поисковик самостоятельно выберет основной не ту версию.
Канонические страницы в любом случае попадают в выдачу чаще. Если же ошибиться с настройкой атрибута, велик риск возникновения проблем с индексацией.
Когда необходим канонический тег?
Пользоваться rel="canonical" имеет смысл, когда по разным ссылкам открывается идентичное содержимое. Рассмотрим все случаи.
Дубли
Дубли со схожим содержимым могут генерироваться CMS. Такие есть на любых сайтах интернет-магазинов, которые дают возможность настраивать параметры поиска. Проще говоря, если в каталоге есть фильтры или любая другая сортировка.
Например, у вас магазин одежды и там есть одинаковые модели костюма, представленные в разных цветах. Можно взять лидера продаж и сделать его каноническим. Остальные расцветки будут по-прежнему доступны пользователям, но в выдаче будет показываться именно самый популярный, ссылочный вес будет идти тоже на страницу с этим товаром.
Страницы пагинации
Когда вы переключаете странички каталога, создаются дубли. Часто для всех страниц пагинации основной указывают первую. Но это неправильно, потому что в таком случае под индексацию попадёт только она. Есть три способа решения проблемы:
- При наличии кнопки «Показать все» версию, содержащую все товары, и стоит сделать канонической. Просто в теге rel="canonical" на всех других страницах пагинации необходимо указать её.
- Если кнопка «Показать все» отсутствует, стоит каждую страничку сделать канонической.
- Способ для тех, кто по тем или иным причинам не хочет делать все странички пагинации каноническими. Тегом rel="canonical" тогда лучше не пользоваться, а страницы пагинации закрыть в noindex, follow. При этом необходимо применить dissalow в robots для /page. Тогда странички не проиндексируются, но будут открываться по ссылкам.
HTTPS, HTTP, www
На одну страницу могут вести три типа ссылок: http://url, http://www.url и https://www.url. Однако поисковики будут расценивать их как три разные странички, у которых идентичное содержимое. Поэтому здесь canonical тоже имеет смысл указать.
Мобильный URL
Мобильный трафик сейчас превосходит десктопный, по этой причине все сайты сейчас разрабатываются сразу с адаптивкой. Google тоже давно уже использует мобильную индексацию. То есть при обходе он ориентируется прежде всего на мобайл-версию сайта. В этой ситуации рекомендуется у адаптивной версии страничек проставить тег rel="canonical", отсылающий к дескстопной как основной. А для десктопной необходимо прописать тег rel="alternate", который будет вести на мобильную.
URL страны
Иногда для определённой страны делают несколько идентичных страниц с отличными URL. Однако контент там абсолютно одинаковый или имеет всего лишь несущественные различия. Здесь тоже следует выбрать одну версию, которая будет канонической, а на всех остальных прописать canonical. Если версии сделаны на разных языках, но содержимое одинаково, используют атрибут hreflang.
Регистры
Поисковые системы могут счесть разными два одинаковых адреса, которые были написаны с использованием разных регистров. Соответственно, необходимо следить, чтобы при назначении URL использовался только нижний регистр.
Как настроить атрибут
Существует несколько вариантов настройки атрибута:
CMS
Сейчас CMS обычно имеют интегрированную функцию для настройки канонических страниц или дают возможность устанавливать соответствующие плагины. Например, на WordPress есть плагин Yoast SEO, в Joomla есть возможность активировать функцию SEF (начиная с 3 версии) и т.д.
Указать между тегами HTML-страницы
Наиболее простой и «употребительный» способ — вписать rel="canonical" в секцию < head > любого дубля.
В заголовке HTTP
У некоторых документов отсутствует < head >. К таким относится, например, PDF. Соответственно, прописать атрибут туда не выйдет. Если вам доступны настройки сервера, canonical можно добавить в заголовок HTTP, применяя .htaccess или PHP. Тогда при обращении к дублирующему документу запрос будет перенаправляться на основной.
В файле Sitemap
Все адреса в XML-файле воспринимаются поисковыми системами как канонические. Так, Google требует, чтобы в Карту были включены только основные страницы. Однако Карта тоже является лишь рекомендацией, поэтому поисковые системы вполне могут ею пренебречь.
Через 301 редирект
301 редирект часто используют, чтобы перенаправить трафик на определённую страницу. Этим методом также пользуются, если сайт открывается по нескольким адресам, как в примере с http/https/www. Тут мы тоже выбираем основной одну версию, а на всех остальных настраиваем 301 редирект. Тогда пользователь, переходя по ссылкам дублей, будет перенаправляться на основную страничку, как и весь трафик, ссылочная масса и т.д.
Однако нужно учитывать, что поисковики могут самостоятельно решать, какой версии отдавать предпочтение. Так, например, Google среди двух одинаковых вариантов, отличающихся https и http, выберет версию с https. Кроме того, поисковик может считать основной ту страницу, которая, по его мнению, имеет более привлекательный URL. Также система может отдать предпочтение неканонической версии, если сочтёт её более подходящей, несмотря на то, что вы на ней прописали canonical.
Типичные ошибки при работе с canonical
Много canonical ссылок для одной страницы
У одной странички может быть только один канонический адрес. Если их будет несколько, краулер поисковой системы либо вовсе её пропустит, либо возьмёт за основной первый указанный адрес.
Последовательность канонических URL
Если вы указываете основной какую-то страницу, но для неё тоже указана какая-то каноническая, то краулер не будет рассматривать её как основную. То есть страничку, в коде которой прописан атрибут canonical, нельзя сделать основной по отношению к какой-либо другой.
Неправильное размещение атрибута
Тег rel="canonical" можно размещать только в < head >. Если вы напишете его в другой секции, поисковики на него не обратят внимания.
Применение canonical вместо 301 редиректа
301 редирект можно применять вместо rel="canonical", но атрибутом нельзя заменять редирект. Редирект — это перенаправление трафика с одной страницы на другую, при этом та, с которой настроен редирект, становится недоступна. Если вы воспользуетесь rel="canonical", обе версии останутся доступными, будут получать трафик, единственное — дубль не отобразится в индексе.
Указание главной как канонической
Нельзя главную делать канонической по отношению к другим страницам. Иначе краулер поисковой системы может не проиндексировать их, и они не попадут в выдачу, а ранжироваться будет только главная.
Закрытие основной страницы от индексации
Если вы указали канонической страничку, которая закрыта для индексации, краулер не сможет её проиндексировать, соответственно, в выдачу она не попадёт. Тогда поисковые системы возьмут за основную другую релевантную неканоническую версию.
Наши специалисты помогут!