Groupes de fichiers de cache

Vous pouvez faire des groupements plus élaborés en paramétrant les groupes de $cache_id. Il suffit de séparer chaque sous-groupe avec une barre verticale | dans la valeur de $cache_id. Vous pouvez faire autant de sous-groupes que vous le désirez.

Le groupement de cache ne devrait pas être confondu avec votre hiérarchie de dossiers de templates, le groupement de cache n'a aucune connaissance de la façon dont vos templates sont structurés. Donc, par exemple, si vous avez une structure de template comme themes/blue/index.tpl et que vous voulez être capable d'effacer tous les fichiers de cache pour le thème blue, vous devriez créer une structure de groupe de cache qui reflète la structure de fichiers de vos templates, comme display('themes/blue/index.tpl','themes|blue'), et les effacer avec clear_cache(null,'themes|blue').

Example 14.9. Groupes d'identifiants de cache


<?php
require('Smarty.class.php');
$smarty = new Smarty;

$smarty->caching = true;

// efface tous les fichiers de cache avec "sports|basketball" comme premiers
// groupes d'identifiants de cache
$smarty->clear_cache(null,'sports|basketball');

// efface tous les fichiers de cache "sports" comme premier groupe d'identifiants.
// Inclue donc "sports|basketball" ou "sports|nimportequoi|nimportequoi|..."
$smarty->clear_cache(null,'sports');

$smarty->display('index.tpl','sports|basketball');
?>