hi,
Wenn du die Doku zu Smarty::clear_cache() nochmal anschaust, wirst du feststellen, dass das erste Argument grundsätzlich ein Template sein muss.
Du kannst also nicht die "CacheGruppe" auf allen Templates löschen, sondern musst die CacheGruppe explizit pro Template löschen. Dieser "Denkfehler" hat mich auch irgendwann mal in den Wahnsinn getrieben. Eine "CacheGruppe" existiert im Kontext eines Templates - und eben nicht andersrum.
Ahh, dass bringt Licht in die Sache. Danke für die erklärung.
Da Christian das Beispiel mit
$smarty->clear_cache('ressource.html');
schrieb, hatte ich angenommen, dass „ressource.html“ eine Ressource (eine Seite) ist und nicht das Template.
Man kann ja auch .html statt .tpl für Templates verwenden.
Also bleibt mir vorerst nur
if (isset($_GET['CacheClean'])) // Online heisst es natürlich anders ;)
{
if ($_GET['CacheClean'] == 'all')
{
$smarty->clear_all_cache();
}
}
wenn gerade kein FTP-zugang zur verfügung steht.
Du kannst deinen eigenen Cache-Handler schreiben, um das Problem an der Wurzel anzupacken...
Das habe ich schon mehrfach vergeblich versucht und wieder aufgegeben. Ist schon so eine Sache, einen Cache-Handler für Dynamische Seiten zu schreiben.
mfg
„Wenn du nicht bereit bist, dafür zu sterben, dann streiche das Wort »Freiheit« aus deinem Vokabular.“ -- Malcolm X
I Have a Dream