Cancellare la cache di altre pagine

Cancellare la cache di altre pagine

Per ottimizzare le performance di risposta, salvo impostazioni particolari, TYPO3 salva il risultato di ogni pagina web all'interno del database. In questo modo il suo contenuto è generato la prima volta e gli accessi successivi sono molto rapidi.

Questo contenuto rimane valido per un periodo prefissato, esempio 24 ore, o fino a quando non viene fatta una modifica nei contenuti della pagina.

Alcune estensioni danno la possibilità di registrare i propri record in un sysfolder diverso dalla pagina di visualizzazione. Esempio più diffuso è quello delle news e del plugin tt_news: i record di ogni news sono inseriti in un archivio che saranno richiamati da plugin presenti su pagine differenti: in home page il plugin con le ultime 5 news inserite, nella pagina delle news il plugin con tutto l'elenco delle news e in una terza pagina il plugin con la visualizzazione della news selezionata.

Nel momento in cui noi inseriamo un nuovo record di tipo tt_news, nel sysfolder impostato, TYPO3 cancellerà la sua cache. Le altre pagine risulteranno invariate e quindi il processo di cache continuerà a rispondere con il "vecchio" contenuto delle pagine, fino alla loro scadenza temporale.

E' possibile comunicare a TYPO3 che ad ogni inserimento va azzerata la cache di pagine diverse da quella in cui stiamo facendo delle modifiche con l'istruzione TCEMAIN.clearCacheCmd da inserire nel TSConfig della pagina in cui si inseriscono i nuovi record.

Sono possibili tre utilizzi differenti:

  • Con il parametro all si cancella la cache di tutto il cms
    TCEMAIN.clearCacheCmd = all
  • Con il parametro pages si cancella la sola cache di tutte le pagine
    TCEMAIN.clearCacheCmd = pages
  • Con un elenco di id si cancella la cache delle rispettive pagine, nell'esempio sarà cancellata la cache della pagina con id 1 e quella con id 15
    TCEMAIN.clearCacheCmd = 1, 15