Cache Löschen für Benutzer freigeben.
Mit zwei Zeilen im TSConfig des Benutzers lassen sich sich die Funktionen Seiten-Cache löschen und FE-Cache löschen auch für normale Benutzer freigeben:User TSConfig:options.clearCache.pages = 1
options.clearCache.all = 1
Diese Einstellung bietet normalen Benutzern die Möglichkeit den Cache zu löschen, wirklich benutzerfreundlich ist das aber noch nicht, da die Löschung des Caches noch immer manuell vorgnommen werden muss.
Cache seitenabhängig automatisch löschen
Eine elegantere Möglichkeit Caches zu löschen bieten einige Optionen im Page-TSConfig. Diese Einstellungen ermöglichen es bei Änderungen in einer Seite oder eines Folders automatisch den Cache anderer Seiten zu löschen. Die Option bietet die Möglichkeit zur Angabe von einzelnen PIDs (PIDs sind die ID-Nummern der Seiten. Die PIDs erscheinen wenn man im Page-Tree mit der Maus über die Seiten-Symbole fährt), all für alle Caches und pages für Seiten-Caches.Auch bei dieser Konfiguration muss options.clearCache.all = 1
, wie im vorherigen Kapitel beschrieben gesetzt werden, da sonst auch die automatische Cache-Löschung inaktiv ist. (Siehe http://bugs.typo3.org/view.php?id=4543)
Page-TSConfig:# Caches aller Seiten bei Änderungen automatisch verwerfen
TCEMAIN.clearCacheCmd = all
Diese Einstellung hat aber nach wie vor den Nachteil, dass alle Caches gelöscht werden, und dadurch bei grossen Sites die Performance sinken kann.
Typo3 bietet auch die Möglichkeit zu löschende Caches genauer zu spezifizieren. Bei der Verwendung beispielsweise von tt_news kann es z.B. sinnvoll sein beim Erstellen einer neuen News nur die Caches jener Seiten zu löschen, die auf die News referenzieren, also z.B. die News-Übersicht. Für diesen Zweck bietet Typo3 mit der Option TCEMAIN.clearCacheCmd die Möglichkeit zur Anführung einer PID-Liste.Beispiel:
Die tt_news-Records befinden sich im Sysfolder "News", eine News-Übersicht auf der Home-Seite mit der PID 1 und auf einer Unterseite mit der PID 23. Mit folgendem Eintrag in der Page-TSConfig des Sysfolders "News" wird der Cache der abhängigen Seiten bei Änderung oder Erstellung eines News-Records automatisch gelöscht:Page-TSConfig der Seite mit den News-Records:# Caches von Seite 1 und 23 bei Eingabe von News automatisch löschen
TCEMAIN.clearCacheCmd = 1,23
Weitere Optionen
Typo3 bietet im Page-TSConfog noch weitere für das Löschen des Caches.TCEMAIN.clearCache_pageSiblingChildren = 1
bietet die Möglichkeit die Unterseiten aller "Geschwisterseiten" (also die Caches aller Seiten auf gleicher Ebene sowie deren Unterseiten) automatisch löschen zu lassen. Standardmässig, also wenn TCEMAIN.clearCache_pageSiblingChildren = 0
ist, werden nur die Caches der Geschwisterseiten automatisch gelöscht.
TCEMAIN.clearCache_pageGrandParent = 1
löscht den Cache der "Grosseltern-Seite", also der über der übergeordneten Seite bei Änderungen der Seite automatisch.Wenn
TCEMAIN.clearCache_disable = 1
im Page-TSConfig eingetragen ist werden bei Änderungen in dieser Seite oder deren Unterseiten keine Caches automatisch gelöscht. Wird diese Option verwendet muss der Redakteur also immer manuell den Cache löschen
Fazit
Das manuelle Cache löschen wird schnell zur Gewohnheit, ist allerdings nicht sehr benutzerfreundlich, insbesondere da die Funktion bei normalen Usern recht gut versteckt ist.TCEMAIN.clearCacheCmd = all
in der Page-TSConfig der obersten Seite ist die einfachste Alternative, insbesondere wenn die Typo3-Site nicht allzu gross ist und nicht allzuviele Änderungen vorgenommen werden. Bei grossen Sites und Sites mit sehr vielen Besuchern kann das dauernde Löschen aller Caches - selbst wenn nur bei der kleinsten Änderung vorgenommen wurde - auch Performance-Probleme hervorrufen. Da empfiehlt es sich dann mit TCEMAIN.clearCacheCmd unter Angabe von abhängigen Seiten-IDs die Einstellung etwas feiner vorzunehmen um nur jene Caches automatisch zu löschen, die wirklich nicht mehr gültig sein sollen. This post first appeared on WEBKONTEXT.Net - Tipps, Tricks & News Rund Ums Web, please read the originial post: here