В 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, пока не сбросим кеш на второй странице.
Подскажите как решить можно проблему?
Заранее спасибо.