Сохранить в кеш типового компонента дополнительные данные - alma-com/wiki-bitrix GitHub Wiki

Дело в том, что есть такой файл как component_epilog, который подключается в шаблон в обход кеширования. И вот незадача - он работает только с теми переменными arResult, которые указали в SetResultCacheKeys. Или со всеми, если данный метод не указан.

Но как же быть, если, например, в news.detail строго определенный набор ключей, а вам надо его расширить? А делается все просто, оказывается. Достаточно в result_modifier.php шаблона дополнить кешируемые ключи новыми:

<?if(!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED!==true)die();
$this->__component->SetResultCacheKeys(array("DETAIL_PAGE_URL"));