Ние представляваме следната ситуация: календар компонент (например), поставен на няколко места с различни модели (вземе 2 образец). Компонентът за шаблон, който трябва да покаже падащ списък с, който да съдържа всички потребители. Потребители, ние получаваме, използвайки Битрикс API файл шаблон result_modifier.php календар компонент. Но в бъдещите потребители няма да е достатъчно, така че трябва да изберете, за да списъка кеш с потребителите, че всеки път, когато страницата с календарната компонент не е скъпо да се правят заявки за бази данни.
В това изпълнение, има проблем - когато промените списъка с потребители или данни от падащия списък на съществуващите потребители, те ще се промени само след кеша е актуализиран, т.е. когато то изтече.
Bitriks кеш компонент съхраняват в папка / Битрикс / кеш / S1 / Битрикс / компоненти.
Къде S1 - идентификатор сайт, Битрикс (в последния случай) - пространство от имена. За стандартните компоненти, това Битрикс за копиран - неговото име за папката. След това идва името на компонента, в нашия случай news.calendar, и в нея папка с произволно име - то съдържа кеш шаблони. Всяка папка за определен шаблон.
Ние трябва да се мотае изтриване на кеша news.calendar съставни събития
- OnAfterUserAdd - добавя потребител
- OnAfterUserUpdate - актуализация потребителски данни
- OnUserDelete - отстраняване на потребителя
За да направите това, добавете кода в /bitrix/php_interface/init.php на файла
BXClearCache - функция, която изтрива кеша. Първият параметър - дали да изтриете кеша напълно (вярно или невярно). Второ - път към кеша роднина / Битрикс / кеша.