Рассмотрим добавление обработчика данных на примере шаблона «1С-Битрикс: Управление сайтом».
В примере ниже применяется обработчик для сбора данных о хлебных крошках на текущей странице. В этом случае в настройках модуля потребуется только указать обязательное поле названия и маску URL.
Если же Вы захотите формировать хлебные крошки вручную, то в этом случае обработчик все равно нужен, но он не будет собирать информацию по странице в автоматическом режиме.
Обработчик «BreadcrumbList», как правило, размещают на все страницы сайта. Для этого не нужно вручную добавлять его в файлы каждой страницы, нужно разместить его в файл, который автоматически отрабатывается на всех страницах сайта. Рекомендуем Вам разместить код в подвал сайта.
Чтобы это сделать нужно:
<? //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», как правило, размещают на детальных страницах товаров. Рекомендуем Вам разместить код в компонент генерирующий детальные страницы товаров. Чтобы это сделать нужно:
<? if( BitrixMainLoader::includeModule('sotbit.schemaorg') && strpos($APPLICATION->GetCurPage(), "bitrix") === false ) { SotbitSchemaorgEventHandlers::makeContent($APPLICATION->GetCurPage(false), 'Product'); $data = SchemaMain::getData(); SchemaMain::setData($data); } ?>
Обработчик «LocalBusiness», как правило, размещают на всех страницах сайта. Рекомендуем Вам разместить код в подвал сайта как в примере обработчика «BreadCrumbs». Чтобы это сделать нужно:
<? 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); } } ?>
Оставьте заявку и мы свяжемся с вами!