Как обычно в случае с CMS, большинство обращений происходит, пока он все еще «новый». Я хотел бы кэшировать вывод страницы в первый раз, когда она отображается за определенный период, чтобы уменьшить большую нагрузку, которая требуется для его генерации.
Я работал с документацией JCache , и базовая механика проработана, как показано здесь:
$cache = JFactory::getCache('MyCache', '');
$cache->setCaching(true);
$cache->setLifeTime(86400); //24 hours
$cache_id = 'MyCache_page_123';
$cached_page= $cache->get($cache_id);
if (!empty($cached_page)) {
$the_page_output = $cached_page;
}else{
$the_page_output = ...<div>the generated view HTML</div>....
$cache->store($the_page_output, $cache_id);
}
// echo or return "$the_page_output"
Я застрял, пытаясь определить, где я должен создать кеш, а затем "сладкое место", чтобы использовать этот кеш, прежде чем вся работа начнется снова.
but I can't find any core joomla code where the cache is being set.
Просто заметка - это внутри$cache->get
метод