Wie man den cache in Typo3 von einem externen script?
Ich habe ein PHP-Skript, das ist nicht eine extension für Typo3. Nun würde ich gerne löschen des gesamten Cache von Typo3 aus diesem Skript. Wie ist das möglich?
Mein Kunde hat ein import-Skript, das importiert mehrere Dinge, die nicht reflectable zu einer Verlängerung. Er will sich nicht einloggen und den cache jedes mal, wenn der cron-job gestartet wird. Das ist nicht eine Lösung überhaupt.
Es gibt eine Menge von Fällen, wenn wir brauchen solche automatischen Verhalten.
Es gibt eine Menge von Fällen, wenn wir brauchen solche automatischen Verhalten.
InformationsquelleAutor Keenora Fluffball | 2013-03-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Installieren Sie die Erweiterung "
cleartypo3cache
" und erstellen Sie die Benutzer "_cli_cleartypo3cache
" und fügen Sie die folgende TSconfig:Nun testen, ob der cache gelöscht:
Wenn der webserver auf localhost, Sie sind glücklich, weil Sie nicht brauchen, dieses shell-Skript. Wenn der webserver auf einem remote-host benötigen Sie eine zusätzliche wrapper-Skript. Dies ist, weil PhpStorm keine Umgebungsvariable für den remote-host-Verzeichnis. Sie müssen dieses Verzeichnis statisch für jedes Projekt in der wrapper-Skript:
Speichern Sie diese Datei in Ihr Projekt-Datei in das Verzeichnis .idea/clear-typo3-cache.sh und machen es ausführbar:
PhpStorm Externe Werkzeuge
Müssen Sie ein "externes Werkzeug" in PhpStorm zu können cache löschen.
Remote-host
Fügen Sie die folgende Zeile "Programm:"
Localhost Szenario
Fügen Sie diese Zeile zu "Programm:"
Fügen Sie diese Zeile auf "Parameter:"
Benötigen Sie einen PHP-interpreter konfiguriert in PhpStorm-->Einstellungen-->PHP $PhpExecutable$. Alternativ können Sie /usr/bin/php
http://www.t3node.com/fileadmin/user_upload/images/phpstorm-external-tools-typo3-cache.png
PhpStorm Keymap
Ich schlage vor, verwenden Sie die gleiche Tastenkombination, wie Sie für die Speicherung oder remote-host hochladen:
Gehen Sie zu PhpStorm-->Einstellungen-->Keymap
Für remote-host-Szenario, navigieren Sie zu: Hauptmenü-->Tools-->Einsatz-->Upload auf Standard-Server. Beachten Sie die bestehende Verknüpfung. Wenn Sie keine haben, erstellen Sie eine neue (ich benutze ALT+SHIFT+U)
Für die localhost-Szenario, benutzen Sie einfach Strg+S (Hauptmenü-->Datei - >Speichern-Alle).
Nun PhpStorm wird Sie warnen, dass die Tastenkombination bereits für einen anderen Befehl. Das ist in Ordnung, es ist genau das, was wir haben wollen.
Das ist es. Ihre TYPO3-caches immer gelöscht, wenn Sie Treffer speichern oder hochladen auf Ihrer Tastatur.
angepasst t3node
InformationsquelleAutor Tamara
Fand ich die Lösung selber und es ist eigentlich ziemlich einfach. Ich warf einen Blick in die class.t3lib_tcemain.php in der t3lib Ordner. Dort haben Sie die notwendigen Befehle zum löschen des cache. Es wird auch überprüft, wenn Sie die cachingframework aktiviert. Wenn ja, müssen Sie abschneiden, ein paar andere Tische sowie (Beginnt mit cachingframework_cache_)
Es ist im Grunde:
/
zwischentypo3conf
und$file
auf die Verknüpfung aufheben & sollten Sie Spülen den typo3temp-Ordner als gut.Ich habe den Schrägstrich, das war ein Fehler, tut mir Leid.
welche version von typo3 verwendest du ??
InformationsquelleAutor Keenora Fluffball
TYPO3 6.x
ersten initialisieren Sie den Dienst in Ihrer Klasse
in Ihrer Funktion rufen Sie einfach
während $pids ist ein integer-Wert (für einzelne Seiten) oder ein array von Ganzzahlen (mehrere Seiten)
finden Sie unter: http://typo3.org/api/typo3cms/class_t_y_p_o3_1_1_c_m_s_1_1_extbase_1_1_service_1_1_cache_service.html
In TYPO3 seit 4.5 (glaube ich) seine eine statische Methode, so dass Sie einfach nur zu rufen,
in Ihrer Steuerung.
Finden Sie hier: http://www.phpkode.com/source/p/typo-cms/typo3_src+dummy-4.6.5/typo3/sysext/extbase/Classes/MVC/Controller/ActionController.php
UPDATE
Vom TYPO3-7 Sie können auch installieren Helmut Hummels Erweiterung typo3_console.
Dann können Sie den cache löschen möchten:
https://extensions.typo3.org/extension/typo3_console/
https://github.com/TYPO3-Console/TYPO3-Console
InformationsquelleAutor Tobias Gaertner
In FLOW3 gibt es eine Möglichkeit, das zu tun solche Sachen, soweit ich weiß mit TYPO3 v. 4.x haben Sie keine solche Standard-CLI-option, so dass Sie verwenden sollten, oder Sie ein eigenes script, oder Verwendung solcher Erweiterungen wie cleartypo3cache oder Cli-Reiniger.
Auch habe ich ein bash-script zu reinigen cache-Tabellen der dB : https://gist.github.com/fedir/5162747
InformationsquelleAutor Fedir RYKHTIK
in der typo3-6.x extbase seine einfache.
Edit : clearPageCache ist nicht statisch sind, dann müssen Sie erstellen Sie ein Objekt der CacheService
TYPO3\CMS\Extbase\Service\CacheService::clearPageCache(pageUid);
InformationsquelleAutor Mohsin Khan
Zum entfernen alle cache-form TYPO3,
Müssen Sie ABSCHNEIDEN, Datenbank-Tabellen, enthält der cache-Daten. Sie sind :
cache_treelist
cache_pagesection
cache_hash
cache_pages
Dann haben Sie auch zu leer "typo3temp" - Ordner zu löschen großen cache von TYPO3.
Für die, die Sie verwenden können externe Skript wie im folgenden link.
http://typo3techie.blogspot.in/2014/05/cleartemp-clear-typo3temp-for-removing.html
Meine Antwort ist nicht gerade über das kürzt die Tabellen. Aber ich sage, dass Sie auch brauchen, um das löschen von Dateien unter typo3temp Ordner und für, dass es ist ein einfaches script zum löschen aller Dateien im angegebenen link.
-1; möglicherweise müssen Sie löschen OPcode-caches basierend auf was Sie tun wollen; Auch, wenn Sie nicht mit der DatabaseBackend cache, aber z.B. Memcached, leeren der Datenbank-Tabellen nicht helfen.
InformationsquelleAutor Maulik Bhojani