Comme c'est généralement le cas avec un CMS, la plupart des hits se produisent alors qu'il est encore "nouveau". Je voudrais mettre en cache la sortie de la page la première fois qu'elle est rendue pour une période donnée afin de réduire la lourde charge de travail qui est nécessaire pour la générer.
J'ai travaillé à partir de la documentation JCache , et j'ai travaillé les mécanismes de base comme indiqué ici:
$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"
Je suis coincé à essayer de déterminer où je dois créer le cache, puis le "point idéal" pour utiliser ce cache avant que tout le travail ne recommence.
but I can't find any core joomla code where the cache is being set.
Juste une note - c'est à l'intérieur de la$cache->get
méthode