Серьезной задачей для программиста является экономия ресурсов. В этом вопросе невозможно обойтись без кэша. Кэш сохраняет сгенерированную в конечном формате информацию и в последующем выдает ее пользователю без лишних затрат на генерацию.
В diafan.CMS за кэш отвечает класс Cache
. Он определен в файле includes/cache.php. Там описаны три основных функции для работы с кэшем: get
, save
, delete
. Вызывать их очень просто:
//выдает данные сохраненные для модуля, помеченные тэгом
$this->diafan
->_cache
->get("тэг", "модуль");
// сохраняет данные для модуля, помечает тэгом
$this->diafan
->_cache
->save($data, "тэг", "модуль");
// удаляет данные для модуля, помеченные тэгом
// если тэг не указан, то удаляет весь кэш модуля
$this->diafan->_cache
->delete("тэг", "модуль");
Последняя фукнция навряд ли будет вами использоватся, так как весь кэш модуля чистится при редактировании контента модуля или при изменении конфигурации модуля.
Вот пример использования кэша:
if(! $result = $this->diafan->_cache->get("list", "news"))
{
//генерируем контент, записываем результат в переменную $result
//...
//сохранение кеша
$this->diafan->_cache->save($result, "list", "news");
}
Кэш хранится в файлах в директории cache. Чтобы файлы корректно записывались установщик CMS требует поставить на эту папку доступ 0777.
Вы можете вручную очистить кэш, удалив все файлы из этой директории.
В некоторых случаях кэш необходимо отключать. Например, вы вносите изменения в алгоритм генерирования данных. Это можно сделать в административной части сайта: Параметры сайта → вкладка Режим разработки → Отключить кэширование. При отключенном кэшировании контент не берется из кэша, однако сгенерированная информация записывается в кэш.
Чтобы оставить комментарий необходимо авторизоваться на сайте.