TYPO3-Cache einer Seite automatisiert leeren lassen
Datensätze einer TYPO3-Extension werden im Normalfall in einem bestimmten Ordner des Seitenbaums abgelegt. Angezeigt werden diese Datensätze dann aber auf ganz anderen Seiten. Dies führt häufig zur Situation, dass neue oder geänderte Datensätze noch nicht auf diesen Seiten angezeigt werden. TYPO3 löscht standardmäßig nämlich nur den Cache der aktuell bearbeiteten Seite. In diesem Fall also des Ordners mit den Datensätzen.
Damit nun auch der Cache der Seite gelöscht wird, auf der die Datensätze angezeigt werden, gibt es einen einfachen Trick. Im Feld TSConfig der Seiteneigenschaften des Ordners können die PIDs der zu leerenden Seiten über das Attribut TCEMAIN.clearCacheCmd eingetragen werden.
Beispiel
Angenommen wir nutzen die beliebte Extension tx_news von Georg Ringer und haben zwei Seiten in unserem Seitenbaum angelegt. Für die Einzelansicht mit der PID 21 und für die Listenansicht mit der PID 23. Dann müssen wir auf dem News-Ordner folgendes eintragen:
TCEMAIN.clearCacheCmd = 21,23
Damit wird in Zukunft auch der Cache dieser Seiten geleert, wenn sich im Ordner etwas ändert.
Optionen für clearCacheCmd
Neben der Definition von bestimmten Seiten (PageUIDs), gibt es noch weitere Möglichkeiten für clearCacheCmd.
TCEMAIN {
# Clear the cache for page uid 12 and 23 when saving a record in this page
clearCacheCmd = 12, 23
# Clear all frontend page caches of pages
clearCacheCmd = pages
# Clear ALL caches
clearCacheCmd = all
# Clear cache for all pages tagged with tag "pagetag1"
clearCacheCmd = cacheTag:pagetag1
}