wCache::clearCacheProject
Löscht den gesamten Projekt-Cache
Funktionsaufruf
Boolean clearCacheProject(String project, Array options = array())
Parameter
- project
- Projektpfad
- options
- subDir
- Falls ein Cache-Unterverzeichnis gelöscht werden soll, kann dieses hier angegeben werden.
- force [|true]
- Falls der Cache auch dann gelöscht werden soll, wenn er nach Seitenaufrufen sowieso angepasst wird.
- allowAsync [|false]
- Falls das Löschen nicht asynchron geschehen soll.
- clearAllContentProjects [|true]
- Falls der Cache aller Inhalts- bzw. Sprachprojekte des aktuellen Projektes ebenfalls gelöscht werden soll.
- clearAllContentProjectsOfSuperGlobal [|true]
- Falls der Cache aller Inhalts- bzw. Sprachprojekte des superglobalen Projektes ebenfalls gelöscht werden soll.
Die Option allowAsync kann ab CMS-Version 13.x genutzt werden.
Diese Funktion wird in den Projektereignissen zu diversen Ereignissen (onAfterUpload, onAfterSaveFile, etc.) genutzt, um nach diesen Aktionen den Projektcache zu leeren:
Beispiel: Auszug aus dem Verzeichnisereignis onAfterSaveFile der Projektereignisse
Quelltext
<?php
/* ... */
wCache::clearCacheProject($eventData['projectPath']);
// sofern asynchrone Aufrufe über PHP nicht möglich sind, wie folgt setzen:
wCache::clearCacheProject($eventData['projectPath'], array('allowAsync' => false));
?>
Weitere Beispiele, welche den Aufruf über ein separates PHP-Skript aufzeigen:
Beispiel: Löscht den Cache des angegebenen Projektes
Quelltext
<?php
include($_SERVER['DOCUMENT_ROOT'].'/weblication/grid.php');
$pathProject = '/de';
if(wUserCur::getType() == 'admin'){
wCache::clearCacheProject($pathProject);
}
?>
Beispiel: Löscht den Navigations-Cache des angegebenen Projektes
Quelltext
<?php
include($_SERVER['DOCUMENT_ROOT'].'/weblication/grid.php');
$pathProject = '/de';
if(wUserCur::getType() == 'admin'){
wCache::clearCacheProject($pathProject, array('subDir' =>'navigation'));
}
// Cache-Unterverzeichnis der Navigation ist in diesem Fall /navigation
?>
Hinweis
Beim Einsatz von Framework-Funktionen in eigenen Skripten beachten Sie bitte den Artikel "So verwenden Sie das PHP-Framework in eigenen Scripten".
Wenn Sie eine Funktion innerhalb einer Weblication® Seite z.B. über das PHP-Quelltext Element oder in einem XSL-Template über wsl:php einbinden, muss das Framework über die grid.php nicht mehr referenziert werden.