is_cached

void is_cached (string template, [string cache_id])

Isso retorna true se há um cache válido para esse template. Isso somente funciona se caching está setado para true.

Exemplo 13-18. is_cached

$smarty->caching = true;
if(!$smarty->is_cached("index.tpl")) {
 // do database calls, assign vars here
}
$smarty->display("index.tpl");

Você pode também passar um cache id como um segundo parâmetro opcional no caso você quer múltiplos caches para o template dado.

Exemplo 13-19. is_cached with multiple-cache template

$smarty->caching = true;
if(!$smarty->is_cached("index.tpl","FrontPage")) {
 // do database calls, assign vars here
}
$smarty->display("index.tpl","FrontPage");