В catalog.section.top в файле result_modifier.php есть код
Код |
---|
$elementId = $GLOBALS['current_news_id']; // ID элемента, к которому проверяем привязку // ID инфоблока, к которому принадлежит элемент $iblockId = 41; // Получаем элементы из инфоблока, которые имеют привязку к элементу с указанным ID $res = CIBlockElement::GetList( [], [ 'IBLOCK_ID' => $iblockId, 'PROPERTY_SHOW_WHERE' => $elementId, ], false, false, ['ID'], ); // Инициализируем массив для хранения ID привязанных элементов $linkedElementIds = []; if ($res->SelectedRowsCount() > 0) { while ($item = $res->Fetch()) { $linkedElementIds[] = $item['ID']; // Добавляем ID в массив } } $arResult['LINKED_ITEMS'] = $linkedElementIds; |
Но результат кешируется (в result_modifier.php же не должен)
В итоге есть две страницы, к ним привязаны разные элементы, но результат они показывают один и тот же.
Пока не сделать сброс кеша ?clear_cache=Y
Тогда результат обновляется, но опять на все страницы, показывает один результат, той, на которой мы сбросили кеш.
<?=// Выводим массив ID
print_r($arResult['LINKED_ITEMS']);
?>
На странице 1 есть ID 15 и 20
На странице 2 есть ID 30 и 45
Если мы на странице 1 сбросим кеш ?clear_cache=Y, то у нас и на второй будут ID 15 и 20, пока не сбросим кеш на второй странице.
Подскажите как решить можно проблему?
Заранее спасибо.