Cache Modul

Modulbeschreibung

Lange Ladezeiten sind ein KO-Kriterium für jeden Onlineshop und sind in vieler Hinsicht problematisch – oft wirken sie sich direkt negativ auf den Umsatz eines Shops aus.

Mit unserem Cache-Modul beschleunigen Sie Ihren Shop auf Raketengeschwindigkeit. Alle Unterseiten Ihres Onlineshops werden in einem Cache abgelegt und ab diesem Zeitpunkt von dort aus aufgerufen. Dadurch müssen die verschiedenen Unterseiten nicht bei jedem Aufruf komplett neu aufgebaut werden.

In den Modul-Einstellungen können Sie bestimmen, welche Seiten gecached werden sollen und wie lang die Aufbewahrungszeit sein soll. Natürlich ist das Zurücksetzen des Caches jederzeit möglich.

Funktionsumfang

  • Schnellere Ladezeiten direkt nach der Installation des Moduls.

  • Google PageSpeed Optimierung.

  • Cache ist auch während einer Session aktiv.

  • Dynamische Inhalte können per Ajax nachgeladen werden.

  • Sie können entscheiden, welche Bereiche des Shops gecached werden sollen.

  • TTL einstellbar.

  • Im Adminbereich kann der gesamte Cache gelöscht werden, oder nur von einzelnen Bereichen (Detailseiten, Listenansicht, Startseite) oder einzelnen Artikeln / Kategorien.

Systemvoraussetzungen

PHP-Version OXID 4 & 5

  • PHP 5.6

PHP-Version OXID 6

  • PHP 7.0 (OXID 6.0.x)

  • PHP 7.1 (OXID 6.1.x)

  • PHP 7.2 - 7.4 (OXID 6.2.x - 6.3.x)

  • PHP 8.0 (OXID 6.3.x - 6.4.x)

  • PHP 8.1 (OXID 6.5.x)

Webserver-Konfiguration

  • IonCube Loader (mind. v5.0)

Kompatibel mit den Themes

  • Flow

  • Wave

  • RoxIVE

Kompatibel mit den OXID Versionen

  • OXID CE/PE 4.9.x bis 4.10.x

  • OXID EE 5.2.x bis 5.3.x

  • OXID CE/PE/EE 6.0.x bis 6.5.x

Installation

Ab OXID 6

  1. Falls noch nicht geschehen, laden Sie bitte zunächst das digidesk Basis-Modul herunter und installieren Sie es gemäß der enthaltenen Installationsanleitung.

  2. Für dieses Modul erstellen Sie nun einen weiteren Unterordner "cache" im Ordner "packages/digidesk", in den die heruntergeladene Zip-Datei entpackt wird.

  3. Führen Sie anschließend folgenden Befehl aus dem Hauptverzeichnis des Shopsystems aus: composer require digidesk/cache

  4. Nun kann das Modul im OXID eShop Admin aktiviert werden

  5. Ggf. Tmp-Verzeichnis leeren und Views neu generieren

Bis OXID 5.3.x/4.10.x

  1. Falls noch nicht geschehen, laden Sie bitte zunächst das digidesk Basis-Modul herunter und installieren Sie es gemäß der enthaltenen Installationsanleitung. Sie erhalten dieses unter:https://www.digidesk.de/produkte/basis-modul

  2. Fügen Sie den Inhalt des Ordnerverzeichnisses des Moduls "modules/digidesk/" via FTP/SFTP unter dem gleichnamigen Pfad in Ihren Shop ein

  3. Aktivieren Sie das Modul im OXID eShop Admin

  4. Ggf. Tmp-Verzeichnis leeren und Views neu generieren

  5. Bitte fahren Sie nun mit der Einrichtung des Moduls fort

Update

Ab OXID 6

  1. Entpacken Sie die neue Modulversion in den Ordner "packages/digidesk/cache"

  2. Deaktivieren Sie das Modul im OXID eShop Admin

  3. Führen Sie anschließend folgenden Befehl aus dem Hauptverzeichnis des Shopsystems aus: composer update digidesk/cache Die Frage, ob die Dateien des Pakets überschrieben werden sollen, bestätigen Sie bitte mit "Y".

  4. Aktivieren Sie das Modul im OXID eShop Admin

  5. Ggf. Tmp-Verzeichnis leeren und Views neu generieren

Bis OXID 5.3.x/4.10.x

  1. Bitte aktualisieren Sie das Basis-Modul gemäß der darin enthaltenen Installationsanleitung.

  2. Deaktivieren Sie dieses Modul im OXID eShop Admin.

  3. Fügen Sie den Inhalt des Ordners "modules/digidesk/" via FTP/SFTP unter dem gleichnamigen Pfad in Ihren Shop ein und überschreiben Sie dabei die vorhandenen Dateien des Moduls.

  4. Aktivieren Sie dieses Modul im OXID eShop Admin.

  5. Ggf. Tmp-Verzeichnis leeren und Views neu generieren.

Automatische Invalidierung des Caches

Für die automatische Invalidierung des Caches enthält das Cache Modul einen Cronjob, um regelmäßig abgelaufene Seiten aus dem Cache zu löschen, so dass diese neu gecacht werden können. Dieser kann über folgende URL aufgerufen werden:

   https://www.ihre-shop-url.de/?cl=dd_cache_cron&fnc=clear&key=[Cronjob Schlüssel in der Modul-Einstellung]

Für crontab sieht der Eintrag z.B. folgendermaßen aus:

*/15 * * * * https://www.ihre-shop-url.de/?cl=dd_cache_cron&fnc=clear&key=[Cronjob Schlüssel in der Modul-Einstellung]

Dies startet das Cronjob Script alle 15 Minuten, wobei das Script die in den Moduleinstellungen definierten TTL Zeiten berücksichtigt, prüft welche der gecachten Seiten neu gecacht werden müssen und diese dann entfernt, damit sie beim nächsten Aufruf neu gecached werden können.

Entwickler Informationen

Im digidesk Cache-Modul können mehrere Möglichkeiten genutzt werden, um das Modul im größeren Umfang nutzbar zu machen. Durch das Bearbeiten einzelner Code-Fragmente lassen sich diese implementieren.

Somit können bestimmte Bereiche dynamisch gehalten werden, auch wenn diese aus dem Cache geladen werden.

Smarty Plugin

Um Widgets trotz aktiviertem Cache-Modul aus dem Cache auszuschließen und weiterhin dynamisch zu halten, integriert das digidesk Cache-Modul ein Smarty Plugin welches die standard Widget Funktion von OXID ersetzen kann.

Nehmen wir zum Beispiel ein Code-Fragment des Templates "footer.tpl". Wenn man das oxwServiceList Widget vom Cache ausschließen wollte, braucht man lediglich den Aufruf der oxid_include_widget-Funktion mit dd_cache_include_widget zu ersetzen:

Vorher:

[{block name="dd_footer_servicelist_inner"}]
    [{oxid_include_widget cl="oxwServiceList" noscript=1 nocookie=1}]    
[{/block}]

Nachher:

[{block name="dd_footer_servicelist_inner"}]
    [{dd_cache_include_widget cl="oxwServiceList" noscript=1 nocookie=1}]
[{/block}]

Wichtig:

Damit ein Inhalt über das Smarty-Plugin geladen und damit vom Cache ausgeschlossen werden kann, muss dieser wie bisher bei der OXID Standard Funktion über einen Widget-Controller gerendert werden.

Hilfe & Support

Haben Sie Fragen oder benötigen Sie Hilfe bei der Installation? Gerne bieten wir Ihnen auch einen Installationsservice an. Kontaktieren Sie uns einfach über eine der unten stehenden Adressen.

Last updated