После решения задачи, хочется рассказать об этом
В этой статье я расскажу, как настроить вывод seo meta теги для сайта на битрикс из настроек инфоблока и включенных в него разделов и элементов соответственно. Для комплексных компонентов вовод мета данных настраивается в параметрах компонента. Мы же рассмотрим, как сделать вывод данных для простых компонентов, где такие параметры отсутствуют.
Создаем файл в шаблоне компонента component_epilog.php Он подключается после того, как сформирован html шаблоном компонента и в него приходят массивы $arResult и $arParams из кэша. Если какие-то параметры не пришли, необходимо их добавить в файле result_modifier.php
global $APPLICATION;
$cp = $this->__component; // объект компонента
if (is_object($cp))
{
// добавим в arResult компонента
$cp->arResult['ITEM'] = $arResult["ITEM"];
$cp->SetResultCacheKeys(array('ITEM'));
}
Далее в component_epilog.php уже отправляем наши сео мета данные c помощью технологии отложенных функций. Следующую запись нельзя было написать в result_modifier.php, т.к. если у компонента включено кэширование, это попросту не будет работать
if(count($arResult["ITEM"])){
$APPLICATION->SetPageProperty("title", $arResult["ITEM"]["IPROPERTY_VALUES"]["ELEMENT_META_TITLE"]);
$APPLICATION->SetPageProperty("description", $arResult["ITEM"]["IPROPERTY_VALUES"]["ELEMENT_META_DESCRIPTION"]);
$APPLICATION->SetPageProperty("keywords", $arResult["ITEM"]["IPROPERTY_VALUES"]["ELEMENT_META_KEYWORDS"]);
}