Zum Inhalt springen

Alle caches löschen

Erstellt am 10. Mai 2005 · 5 Antworten · letzte Antwort am 3. Juni 2005

Tags: Frage

bkahle ·

Hallo,

wie bekomme ich es hin, dass auch "normale" Redakteure den Link "Alle Caches löschen" sehen ?

Gruss,
Björn

just2b ·

wenn man in einem inhaltselement sich befindet, gibts rechts oben ohnehin das dropdown-menü "menü" mit eintrag "alle caches löschen"

und sonst hilft die forum-suche zu sicher zahlreichen lösungen

bkahle ·

Hallo,

ich habe ein Plugin entwickelt, dessen Ausgabe ich auch gerne indexiert haben möchte.

Es handelt sich dabei um eine News-Extension, die vor 18 Monaten geschrieben habe, da mir tt_news damals nicht alle Funktionen bot, die ich brauchte. Entweder funktioniert nun bei mir die Indexierung oder aber die Aktualisierung der Inhalte. Wenn ich indexiere, können die Redakteure so viele News eingeben wie Sie wollen, es ändert sich im Frontend nix.

Auch folgenden Hack habe ich schon TSConfig eingetragen, ohne Erfolg:

options.clearCache.pages = 1
options.clearCache.all = 1

Gruss,
Björn

bkahle ·

Für alle, die an einem ähnlichem Problem zu knabbern haben:

Ich habe einen prima Tip von einem befreundeten Typo3ler bekommen und der funktioniert wirklich gut:

Wenn Ihr Frontend-Plugins entwickelt, aber dennoch auf das Caching angewiesen seit, dann fügt in der Main-Methode folgende Code-Zeile ein:

$GLOBALS['TSFE']->set_cache_timeout_default(1);

So wird der Cache durchlaufen, aber beim nächsten Seitenaufruf, verarbeitet die Extension die aktuellen Daten.

Weiterhin ist wichtig zu beachten, immer Typo3-konforme Links zu erstellen und nicht einfach

$output = '<a href="http://sonswo""...

zu schreiben, da sonst die wichtige HTTP-Variable "chash" nicht einbezogen wird. Besser ist es so:

$this->allowCaching = 0;
$typolink_conf = array ( "returnLast" => "url", // don't wrap the link in anchor tags
"parameter" => $GLOBALS["TSFE"]->id,
"additionalParams" => "&meinparameter=5",
"useCacheHash" => 1, // $this->allowCaching,
"no_cache" => !$this->allowCaching
);
$newLink = $this->cObj->typolink("", $typolink_conf);
$output = '<a href="$newLinks">....

Gruss,
Björn