ГлавнаяБлогВыводим в header.php компонент с параметрами, переданными в теле страницы

Выводим в header.php компонент с параметрами, переданными в теле страницы

Рамиль Юналиев
Рамиль Юналиев
E-Commerce Lead
30 августа 2010 г.
1 мин чтения

Иногда нужно вывести информацию в заголовке страницы, но параметры для компонента доступны только в теле страницы. Решение — использовать отложенные функции Bitrix.

Функция размещается в init.php:

function componentHeader($text)
{
    global $APPLICATION;
    $arParams = $APPLICATION->GetPageProperty('PARAMS');
    if(is_array($arParams))
    {
        ob_start();
            $APPLICATION->IncludeComponent('demo:test', '', $arParams);
            $contentTime = ob_get_contents();
        ob_end_clean();
        return $contentTime;
    }
}

В заголовке вызывается через:

$APPLICATION->AddBufferContent("componentHeader");

Параметры передаются через свойство страницы PARAMS, которое устанавливается в теле страницы до момента вывода буфера.