Доброго всем времени суток. Сейчас столкнулся с такой проблемой:
Весь каталог сделан 1 страницей, в 3 файла /catalog/list.php, /catalog/index.php, /catalog/detail.php. При переключении на другой раздел просто аяксом подтягивается содержимое раздела и выводится. Необходимо чтобы для каждого раздела выводился свой title. Через SetPagePropety получается, но нужно чтобы именно значение выводилось из настройки раздела(SEO), чтобы клиент просто заполнил в админке. Вот с этим затык - получить значение, которое указано в админке никак не получается. Пробовал использовать и из обучения, но идет по ветке return "Стандартная страница"; title получается пустым. Перепробовали все настройки и компонента и изменения страницы. Еще конечно останется проблема, что тайтл не будет меняться до перезагрузки страницы, но этот тайл еще надо получить, а это никак не получается.
Код
$APPLICATION->AddBufferContent('ShowCondTitle');
function ShowCondTitle()
{
global $APPLICATION;
if (!$APPLICATION->GetTitle())
return "Стандартная страница";
else
return $APPLICATION->GetTitle();
}
$APPLICATION->SetPageProperty("title", ShowCondTitle());
Получить поля SEO для элемента можно так:
CModule::IncludeModule("iblock");
$ipropValues = new \Bitrix\Iblock\InheritedProperty\ElementValues(
$arCurElem["IBLOCK_ID"], // ID инфоблока
$arCurElem["ID"] // ID элемента
);
$arElMetaProp = $ipropValues->getValues();
echo ''; print_r ($arElMetaProp); echo '';
Поля SEO для раздела можно получить похожим способом: