Добавление canonical link на страницы сайта | Статьи CMS «1С Битрикс»
Добавить на все страницы сайта метатег canonical. Для товаров проверять значение определенного свойства инфоблока, в случае его заполненности значение брать из него.
Решение
Во первых определим какие страницы у нас есть на сате и как они формируются:
- обычные страницы
- страницы новостей и статей, которые выводятся комплексными компонентами, такими как bitrix:news
- страницы каталога товаров, которые формируются компонентом bitrix:catalog
Для каждого из этих типов страниц нужно сформировать link canonical.
Canonical для обычных страниц сайта и страниц новостей
Для обычных страниц сайта сформируем значение тега canonical из данных массива $_SERVER и значения адреса страницы, но учтем, что не все страницы обычные, добавим условие для исключения страниц каталога, т.к. для них формирование тега отличается. Страницы новостей исключать не будем, по условиям задачи они не нуждаются в особой логике.
1С Bitrix: Установка canonical адреса ( тега rel=canonical ) для статической страницы
Необходимо открыть для редактирования требуемую статическую страницу, у которой надо задать canonical-адрес.
Для этого заходим в нужную папку и выбирает для редактирования index.php ( Редактировать как PHP )
После того как файл открылся, в него необходимо вставить php-код:
Вставляем сразу после строки require($_SERVER[«DOCUMENT_ROOT»].»/bitrix/header.php»); и сохраняем изменения.
Теперь у страницы будет задан canonical-адрес и все её дубли не будут учитываться при индексировании.
Как добавить на 1С Битрикс ссылку canonical?
Вопрос, как можно реализовать canonical ссылку в шапке страницы?
Проблема, что поисковики начали утверждать, у меня в два раза больше страниц, чем на самом деле (начали создавать дубли одних и тех же страниц). Выход один, указать каноническую страницу, но как реализовать?
Перечитал весь интеренет, ответа не нашел. Кто сталкивался, как решил?
Для catalog.section
в result_modifier.php
Для catalog.element
в result_modifier.php
Всем спасибо кто откликнулся. Надеюсь данное решение кому то поможет вроде меня.
п.с. в техподдержке согласились со мной, что это необходимый функционал и обещали что добавят в будущую версию, правда не уточнили в какой именно релиз.
п.с. ребят, за вопросом не слежу (он востребован, комментарии постоянно появляются), решение возможно устарело. Напишите в ЛК правильный вариант, что бы я обновил решение в вопросе.
Name already in use
gdecider.github.io / pages / articles / articles-bx-canonicel-link-add.md
- Go to file T
- Go to line L
- Copy path
- Copy permalink
- Open with Desktop
- View raw
- Copy raw contents Copy raw contents
Copy raw contents
Copy raw contents
Добавить на все страницы сайта метатег canonical. Для товаров проверять значение определенного свойства инфоблока, в случае его заполненности значение брать из него.
Во первых определим какие страницы у нас есть на сате и как они формируются:
- обычные страницы
- страницы новостей и статей, которые выводятся комплексными компонентами, такими как bitrix:news
- страницы каталога товаров, которые формируются компонентом bitrix:catalog
Для каждого из этих типов страниц нужно сформировать link canonical.
Canonical для обычных страниц сайта и страниц новостей
Для обычных страниц сайта сформируем значение тега canonical из данных массива $_SERVER и значения адреса страницы, но учтем, что не все страницы обычные, добавим условие для исключения страниц каталога, т.к. для них формирование тега отличается. Страницы новостей исключать не будем, по условиям задачи они не нуждаются в особой логике.