Dez
6
Um den Cache innerhalb einer Frontend_Extension zu löschen genügt ab Typo3 4.5 die Zeile:
$pidList = implode(',', $given_PIDs); // Konvertiert Array zu einem Komma getrennten String. (z.B. 1,12,55) $GLOBALS['TSFE']->clearPageCacheContent_pidList($pidList);
Der ehemalige Weg über die Funktion clear_cacheCmd() führt zu einem “Fatal error: Call to a member function writelog() on a non-object”.
Die Ursache ist die, dass die Funktion davon ausgeht das ein Backend-User eingeloggt ist, was zu 99,9% der Fälle nicht zutrifft.
Seit dem Erscheinen der TYPO3 Version 4.5.x, wurde auch im TYPO3-Bugtracker ein sehr hilfreicher Eintrag dazu veröffentlicht.
0016844: error when using t3lib_TCEmain->clear_cacheCmd in frontend (only for TYPO3 4.5 and higher)
Hat einer meiner Leser vielleicht noch einen Tipp, wie sich der Frontend-Cache mit einem Kommentar für das Protokoll im TYPO3-Backend leeren lässt? Seit der TYPO3-Version 4.5.x wird das Leeren des TYPO3-FE-Caches im Protokoll mit einem Kommentar versehen. Diese Methode wäre auch für den Frontend-Cache eine schöne Angelegenheit.
hi jörg,
ich komme an der stelle mit meiner frontend extension [die ich nicht selber programmiert habe und nicht im TER ist] nicht weiter.
ich muss den FE cache leeren wenn ein benutzer seine VITA gespeichert.
wo muss ich deinen obigen baustein einbauen und wie bestimme ich die pidList?
bzw ich habe eh nur eine seite wo das passieren müsste.
es gibt zwei stellen innhalb der extension wo der umgang mit dem cache definiert wird:
$this->pi_USER_INT_obj = 1; // 1= Configuring so caching is not expected. This value means that no cHash params are ever set.
und
t3lib_extMgm::addPItoST43($_EXTKEY, ‚pi/class.tx_profile_pi11.php‘, ‚_pi11‘, ‚list_type‘, 1); //detailansicht – cachen, wegen suche
hast du nen tipp für mich?
beste grüsse
stefan