На сайте имеется календарик, делает весьма много запросов к базе и поэтому вызывается на странице как кешируемый сниппет. Но вот в 12 часов наступает новый день, а выделенным остается предыдущий(по понятным причинам). И через 2 часа ситуация не меняется, только принудительная очистка кеша помогает.
Решил выполнять очистку кеша ровно в 12 с помощью планировщика crontab, который вызывает несложный скрипт. Вот его код:
include_once('manager/includes/document.parser.class.inc.php');
include_once ('manager/includes/config.inc.php');
$modx = new DocumentParser;
$modx->clearCache();
Проверил - работает. Создал задачу в crontab, успешно выполнилась в указанное время. Но кеш не очистился, текущий день календаря прежний. Думаю дело в том, что MODx не позволяет выполниться скрипту напрямую, а только по обращению через сайт. Какие идеи как с этим бороться?
И еще вопросы по кешу: по какому принципу MODx его обновляет? где можно поменять время жизни кеша?