Если стоит задача поместить в кеширование часть данных, которые появляеются в результате работы кода в файле result_modifier.php - эти данные нужно поместить в кеш. Для этого, result_modifier.php должен содержать такой код:
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
$cp = $this->__component; // объект компонента
if (is_object($cp))
{
// добавим в arResult компонента два поля - MY_TITLE и IS_OBJECT
$cp->arResult['MY_TITLE'] = 'Мое название';
$cp->arResult['IS_OBJECT'] = 'Y';
$cp->SetResultCacheKeys(array('MY_TITLE','IS_OBJECT'));
// сохраним их в копии arResult, с которой работает шаблон, если модуль main меньше 10.0
if (!isset($arResult['MY_TITLE']))
{
$arResult['MY_TITLE'] = $cp->arResult['MY_TITLE'];
$arResult['IS_OBJECT'] = $cp->arResult['IS_OBJECT'];
}
}
В результате, в component_epilog.php будет доступен результат выполнения данного кода:
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
global $APPLICATION;
if (isset($arResult['MY_TITLE']))
$APPLICATION->SetTitle($arResult['MY_TITLE']);
