Россия

region-img

Документация Сотбит: Микроразметка Schema.org. Установка обработчика

Установка обработчика

Для автоматической генерации нужно вставить код в файл, который срабатывает на нужных страницах. Для разных сущностей вставляется разный код.
Модуль построен таким образом, что без обработчика не генерируется json+ld. И не важно собирает он информацию по странице или нет.

Рассмотрим добавление обработчика данных на примере шаблона «1С-Битрикс: Управление сайтом».

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

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

Добавление кода обработчика «BreadcrumbList»

Обработчик «BreadcrumbList», как правило, размещают на все страницы сайта. Для этого не нужно вручную добавлять его в файлы каждой страницы, нужно разместить его в файл, который автоматически отрабатывается на всех страницах сайта. Рекомендуем Вам разместить код в подвал сайта.

Чтобы это сделать нужно:

  1. Открыть файл генерирующий подвал сайта. Для «1С-Битрикс: Управление сайтом» это [Файлы и папки//bitrix/templates/eshop_bootstrap_green/footer.php]
  2. Нажать правой кнопкой мыши на файл и выбрать пункт меню «Редактировать как РНР».
  3. Вставить код обработки данных «BreadcrumbList» перед закрывающим тегом </body>.

<?
//Schema org breadcrumb
if(\Bitrix\Main\Loader::includeModule('sotbit.schemaorg') && (strpos($APPLICATION->GetCurPage(), "bitrix") === false) ) {
    Sotbit\Schemaorg\EventHandlers::makeContent($APPLICATION->GetCurPage(false), 'breadcrumblist');

    $data = SchemaMain::getData();
    if($data) {
        foreach ($data as $k => &$dat) {
            if ($dat['@type'] == 'breadcrumblist') {
                $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";

                if(!empty($APPLICATION->arAdditionalChain)) {
                    $arChain = $APPLICATION->arAdditionalChain;
                    foreach ($arChain as $key => $item) {
                        unlink($dat['itemListElement'][$key]);
                        $dat['itemListElement'][$key]['@type'] = "ListItems";
                        $dat['itemListElement'][$key]['name'] = $item['TITLE'];
                        $dat['itemListElement'][$key]['item'] = $protocol . $_SERVER['SERVER_NAME'] . $item['LINK'];
                        $dat['itemListElement'][$key]['position'] = $key + 1;
                    }
                }

                SchemaMain::setData($data);
            }
        }
    }
}
?>

Добавление кода обработчика «Product»

Обработчик «Product», как правило, размещают на детальных страницах товаров. Рекомендуем Вам разместить код в компонент генерирующий детальные страницы товаров. Чтобы это сделать нужно:

  1. Перейти к эпилогу шаблона компонента детальной страницы товара. Для интернет-магазина это путь [Файлы и папки//bitrix/components/bitrix/catalog.element/templates/.default/component_epilog.php]
  2. Нажать правой кнопкой мыши на файл и выбрать пункт меню «Редактировать как РНР».
  3. Вставить код обработки данных микро-разметки типа «Product» перед закрывающим тегом </body>.
<?
if( BitrixMainLoader::includeModule('sotbit.schemaorg') && strpos($APPLICATION->GetCurPage(), "bitrix") === false ) {
   SotbitSchemaorgEventHandlers::makeContent($APPLICATION->GetCurPage(false), 'Product');
   $data = SchemaMain::getData();
   SchemaMain::setData($data);
}
?>

Добавление кода обработчика «LocalBusiness»

Обработчик «LocalBusiness», как правило, размещают на всех страницах сайта. Рекомендуем Вам разместить код в подвал сайта как в примере обработчика «BreadCrumbs». Чтобы это сделать нужно:

  1. Открыть файл генерирующий подвал сайта. Для «1С-Битрикс: Управление сайтом» это путь [Файлы и папки/bitrix/templates/ eshop_bootstrap_green/footer.php]
  2. Нажать правой кнопкой мыши на файл и выбрать пункт меню «Редактировать как РНР».
  3. Вставить код обработки данных «LocalBusiness» перед закрывающим тегом </body>.
<?
if( \Bitrix\Main\Loader::includeModule('sotbit.schemaorg') && (strpos($APPLICATION->GetCurPage(), "bitrix") === false) ) {
   Sotbit\Schemaorg\EventHandlers::makeContent($APPLICATION->GetCurPage(false), 'localbusiness');

   $data = SchemaMain::getData();
   if(is_array($data)){
       SchemaMain::setData($data);
   }
}
?>

Нужна помощь в настройке решения

Оставьте заявку и мы свяжемся с вами!