эеменнтов - другой инфоблок. как при изменение элементов другого инфоблока сбрасывать кеш news.detail ? есть ли чтото штатное?
clearComponentCache
не подходит: чтобы CBitrixComponent::clearComponentCache('vendor:component-name') работал для своих компонентов нужно при формировании кеша в компоненте принудительно указать cachePath = '/s1/vendor/component-name' в методе StartResultCache . то есть нужно кастематизировать компонент
вы сказали про стандартные ньюс лист и ньюс детейл
Да, к стандартным тож относится. Если этого не сделать, то cachePath формируется автоматически и он становится /s1/vendor/component-name/xxx, где xxx - какие-то символы 06f, d80 и др.
отлично юзаю с каталог секшн
ок попробую, ты вешаешь CBitrixComponent::clearComponentCache на событие изменение элемента инфоблока?
не совсем. на аяксе повешено добавление в избранное, я после добавления скидываю каталог секшн
В register_modifier повесьте сброс тегированного кеша на нужном инфоблоке.
нет связь с элементам например страна Россия и у ней свойство привязка к элементам города: москва, казань. и вывод news.detail элемента Россия. И когда элемент Москва изменился нужно сбросить кеш news.detail.
Я вам ответил, что нужно для вашей задачи. Зарегистрируйте сброс тегированного кеша для инфоблока, где у вас Москва содержится. Идентификатор - iblock_ИДинфоблока, если не ошибаюсь
я понимаю что нужно вешать на событие изменение элементов инфоблока города сброс кеша iblock_страна. Причем здесь result_modifier?.
Почитайте, что такое тегированный кеш.
и тогда при изменении любого города весь кеш во всех городах снесет? или нет?
Да, так работает тэгированный кеш
Так что советик слегка вредный, хотя задача требует пачки уточнений и доп. анализа по частоте изменения данныых Вероятно там есть данные по городу на странице и проще и оптимальнее будет пробросить доп параметром в компонент дату изменения города (или хеш)
А как вы собрались определять - какой именно файл кеша компонента сбрасывать? И как вам поможет добавление каких-либо параметров в компонент, с учетом того, что снаружи не узнать, какие именно города попадут в выборку ВНУТРИ компонента?
компонент известен вроде как. Если бы там была выборка данных, то тег проставился автоматически и сбросился в GetList (может в новых версиях чего и поменяли, но не должно) Порчему и предположение, что это бубен с условиями вывода по выбранному городу
Обсуждают сегодня