Николаев Виталий
Блог веб-разработчика: Битрикс, PHP, Python, Linux и SEO
Битрикс Битрикс
25.06.2020

Битрикс вывод канонических ссылок

Для вывода канонической ссылки в 1С-Битрикс можно воспользоваться встроенными средствами системы.

Canonical-ссылка помогает:

  • избежать дублей страниц;
  • улучшить SEO;
  • указать поисковым системам основную страницу.

Получаем URL текущей страницы

Для начала определяем текущий URL:

$page = $APPLICATION->GetCurPage();

Метод:

GetCurPage()

возвращает:

  • текущий путь страницы;
  • без домена;
  • без GET-параметров.

Добавляем canonical в head

Далее добавляем canonical-ссылку в <head> средствами Битрикс:

$APPLICATION->AddHeadString(
    '<link rel="canonical" href="http://'.SITE_SERVER_NAME.$page.'" />',
    true
);

В своих проектах я использую серверную инфраструктуру Timeweb Cloud

VPS и облачные решения для стабильной работы сайтов на PHP и 1С-Битрикс — от корпоративных сайтов до интернет-магазинов и высоконагруженных веб-проектов.

Перейти на Timeweb Cloud
Реклама · ERID: CQH36pWzJqVJ4YD9t5y227AkMQdhpG2THarwRmX2g9tS8x

Полный код

<?
// Выводим canonical ссылку

$page = $APPLICATION->GetCurPage();

$APPLICATION->AddHeadString(
    '<link rel="canonical" href="http://'.SITE_SERVER_NAME.$page.'" />',
    true
);
?>

Что делает AddHeadString

Метод:

AddHeadString()

позволяет:

  • добавлять HTML-код в <head>;
  • подключать meta-теги;
  • подключать canonical;
  • добавлять свои скрипты и стили.

Где размещать код

Обычно canonical размещают:

  • в header.php;
  • в component_epilog.php;
  • в шаблоне компонента;
  • в init.php для глобальной логики.

Лучше использовать HTTPS

Если сайт работает по HTTPS, лучше сразу использовать:

https://

Пример:

$APPLICATION->AddHeadString(
    '<link rel="canonical" href="https://'.SITE_SERVER_NAME.$page.'" />',
    true
);

Когда нужен canonical

Canonical особенно полезен:

  • в интернет-магазинах;
  • при фильтрах каталога;
  • на страницах пагинации;
  • при наличии GET-параметров;
  • для борьбы с дублями URL.

Пример canonical ссылки

В результате в код страницы будет добавлено:

<link rel="canonical" href="https://site.ru/catalog/" />

Итог

Для вывода canonical-ссылок в Битрикс удобно использовать:

  • $APPLICATION->GetCurPage();
  • $APPLICATION->AddHeadString();

Это простой способ улучшить SEO и избавиться от дублей страниц.

135 просмотров

Если возникли сложности

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

Поддержка сайтов на 1С-Битрикс

Поддержка сайтов на 1С-Битрикс: быстрое решение ошибок, консультации, обучение сотрудников и сопровождение сайта. 
Резервирую время под ваш проект для оперативной помощи и стабильной работы сайта.
Подробнее
Где заказы?

Почему один сайт стабильно приносит заявки, а другой годами просто «висит в интернете»?

В телеграм-канале «Где заказы?» я разбираю реальные ошибки бизнеса, SEO, сайты, рекламу, воронки продаж и показываю, почему компании теряют клиентов и как это исправить.

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

Комментарии

Где заказы?
Почему у одних компаний очередь из клиентов, а у других пустой сайт и тишина?
Телеграм канал «Где заказы?» — про продажи, сайты и ошибки бизнеса на реальных примерах. Подписаться