Noch schneller, noch stabiler: Gambio-Ladezeitoptimierung 1.1

Nach dem Google-Geschwindigkeits-Update von Juli 2018 und einigen Änderungen bei Gambio selbst ist nun Version 1.1 des Gambio-Moduls zur Ladezeitoptimierung verfügbar. Über die Kompatibilität mit verschiedenen Einstellungen bei mehrsprachigen Shops hinaus sorgt vor allem erweitertes Caching für eine noch bessere Nutzererfahrung.

Update verfügbar: Gambio-Modul zur Ladezeitoptimierung Version 1.1
 


▷ Relevante Neuerungen im Schnelldurchlauf

Neue Optionen zur Optimierung

CSS-Dateien nicht-blockierend laden

Hintergrund dieser neue Option zur Optimierung ist ein Modul, das ein und dieselbe CSS-Datei doppelt in den Quellcode einfügt und das zudem noch auf Seiten, auf denen keine einzige der redundant geladenen CSS-Regeln benötigt wird. MailBeez? Shopvoting? Mailhive? Keine Ahnung, wie das Ding nun genau heißt, aber sauber programmiert und getestet sieht anders aus. In jedem Fall verhindert das Gambio-Modul zur Ladezeitoptimierung, dass CSS-Dateien im selben Dokument mehrfach geladen werden. Von dieser Ausnahmeerscheinung abgesehen gibt es gute Gründe für als auch gegen das Nachladen von CSS-Dateien. Durch Schaffung der Option haben Sie nun zumindest die Möglichkeit, selbst zu entscheiden.

Von der getroffenen Auswahl unberührt ist in jedem Fall die main.css-Datei des Templates Honeygrid. Das nicht-blockierende Laden findet nur bei allen weiteren CSS-Dateien Anwendung. Im Übrigen bietet Gambio bereits nativ die Option, den Inhalt der main.css-Datei in den Quellcode der HTML-Dokumente einzufügen. Dabei gilt wie immer bei diesem Vorgehen: Der erste Seitenaufruf ist schneller, alle weiteren deutlich langsamer wegen des fehlenden Browser-Cachings und aufgeblähten HTML-Dokuments.

Erweiterung für Google Fonts

Seit Version 3.10.0.3 bietet Gambio die Möglichkeit, Google Font-Dateien auf dem eigenen Server zu speichern. In Anbetracht kursierender Abmahnungen wegen der Nutzung von CDNs ist dies in puncto Datenschutz sicherlich nachvollziehbar.

Ohne zu sehr abschweifen zu wollen, muss an dieser Stelle der kleine Exkurs erlaubt sein: Es sind dieselben Institutionen, die den Betrieb einer Website geschweige denn eines Onlineshops in der EU erheblich erschweren und Technologien praktisch verbieten, und dann aber hadern, dass die Weltmarktführer des Webs wie Facebook, Google (Alphabet) und Amazon alle außerhalb der EU sitzen. Merkwürdig, oder?

In jedem Fall trägt die Version des Moduls den geänderten Rahmenbedingungen in Gambio Rechnung. Auch mit lokal geladenen Google-Font-Dateien sind noch Optimierungen möglich, die das Modul vornimmt.

Neue Caching-Optionen

Caching für Kategorie-Unterseiten

 Alle Kategorie-Seiten mit Standardauswahl cachen

Bisher hat das Modul nur alle Seiten aus der Sitemap in den Cache gelegt. Von den Kategorien Ihres Onlineshops ist das jeweils nur die erste Seite. Mit der neuen Option Caching für Kategorie-Unterseiten liefert das Modul auch alle Folgeseiten ultraschnell aus dem Cache.

Folgeseiten gibt es logischerweise nur, wenn in einer Kategorie mehr Artikel vorhanden sind, als pro Seite anzuzeigen sind. Um den Server beim Generieren des Caches nicht zu überlasten, beschränkt sich das Modul auf die Standard-Einstellungen zur Darstellung der Kategorie. Das heißt, es generiert die Seiten für Besucher, die einfach nur Seite 2, 3 etc. aufrufen, ohne die Darstellung (Liste vs. Kacheln), Sortierung oder Anzahl Artikel pro Seite zu verändern.

Seiten mit Endung .php nicht cachen

Aktivieren Sie diese Option, wenn Probleme bei der Auslieferung von Seiten auftreten, die auf .php enden. Tatsächlich sollte dies nur bei einem Szenario auftreten, nämlich wenn Sie mehrere Sprachen aktiviert haben und kein virtuelles Verzeichnis pro Sprache (Sprachcode in URL). In diesem Fall wäre bspw. die index.php und die Datei zur Anzeige neuer Artikel in Ihrem Shop immer nur in einer Sprache verfügbar.

Sollte die Ursache für etwaige Probleme beim Aufruf der z.B. products_new.php im Zusammenspiel zwischen dem Modul und der Konfiguration des Webservers liegen, können Sie die Option natürlich zunächst einmal aktivieren. Eine Dauerlösung müssten aber natürlich wir bereitstellen, weshalb wir um entsprechende Mitteilung bitten.

Caching-Protokoll schreiben

Die Option dient Kontrollzwecken. Das Caching-Script erzeugt eine listenartige Ausgabe der URLs, deren zugehörige Dateien im Cache zu aktualisieren sind.

cleanup-Parameter

Bei der Cache-Generierung steht nun der neue Parameter cleanup zur Verfügung. Dieser ist ähnlich dem schon vorher verfügbaren force-Parameter zu nutzen. Die Reihenfolge der beiden Parameter ist egal.

Bisher hat das Script lediglich Dateien im Cache aktualisiert oder neu hinzugefügt, aber keine nicht mehr benötigten gelöscht. Das war vor allem dann problematisch, wenn ein Artikel nicht mehr verfügbar war, die Seite aber unerwünschter Weise noch aufrufbar. Das Argument cleanup entfernt nun Dateien zu nicht mehr existenten Seiten aus dem Cache.

Sprachen

Kurz gesagt hat das Modul bisher nicht für alle in Ihrem Onlineshop verfügbaren Sprachen einen Cache erstellt. Das Modul bezieht die in den Cache zu legenden Seiten anhand der Gambio-Funktionalität zur Erstellung der Sitemap. Vielleicht haben Sie mitbekommen, dass es diesbzgl. seitens Gambios auch eine Änderung gab, sprachspezifische Sitemaps betreffend. Auch das Caching für einen schnelleren Shop kennt nun keine Sprachbarriere mehr.

Des Weiteren können Sie aktivieren, dass auch Seiten mit einem language-Parameter aus dem Cache zu laden sind. Ebenso wie die Deaktivierung des Caches für Seiten mit der Endung .php ist das dann von Relevanz, wenn Sie keinen Sprachcode in die URL einfügen (die Bezeichnung der Option im Gambio-Backend ist eigentlich völlig falsch, weil der Sprachcode so oder so in der URL des Canonical-Links ist, nur an unterschiedlichen Positionen) und mehrere Sprachen aktiviert haben. Google indexiert dann URLs wie ihrshop.com/artikel.html?language=de. Diese seit ist trotz Query String durchaus auch aus dem Cache lieferbar.

Kompatibilität & Bugfix

Erkennung von Sprach-Einstellungen

Über die schon genannten, expliziten Einstellungsmöglichkeiten zum Umgang mit Sprachen hinaus erkennt das Modul nun weitere Konfigurationen Ihres Gambio-Shops. Diese berücksichtigt es automatisch bei der Erstellung und Auslieferung von Dateien aus dem Cache.

Problem mit PNG-Bildern behoben

PNG-Bilder verwenden wohl die wenigsten als Artikelbilder im Onlineshop. Anders ist es kaum zu erklären, dass mich erst ein halbes Jahr nach Veröffentlichung des Moduls eine Mitteilung erreicht, wonach der Alphakanal (Transparenz) zugunsten von schwarz verloren geht. Vielen Dank für den Hinweis! Das Problem ist behoben.

Weitere kleine Verbesserungen

Erkennung für mod_rewrite & mod_mime verbessert

mod_rewrite aktiv, mod_mime aktiv

Je nach Webservereinstellungen konnte es vorkommen, dass das Modul im Gambio-Admin das Fehlen der Apache-Module mod_rewrite & mod_mime bemängelte, obwohl diese vorhanden und aktiviert waren. Dieses Problem ist behoben.

Cache-Status-Erkennung erweitert

In erster Linie, um die neuen Optionen zu den Spracheinstellungen und das Caching der Kategorie-Unterseiten zu berücksichtigen, ist das Tortendiagramm zur Darstellung des Cache-Status entsprechend erweitert. Des Weiteren erfolgt die Analyse der Cache-Dateien und Generierung des Diagramms erst, nachdem der Rest der Seite im Gambio-Backend fertig geladen ist.

Autom. Aktualisierung der .htaccess-Datei

Nicht wirklich ein neues Features und nur der Vollständigkeit halber: Einige der neuen Einstellungsmöglichkeiten gehen mit Änderungen in der .htaccess-Datei hervor. Diese müssen Sie nach Änderung der Konfiguration jedoch nicht händisch bzw. über den Button-Klick aktualisieren. Wenn der für die Auslieferung der Dateien aus dem Cache erforderliche Code in der .htaccess-Datei steht, aktualisiert ihn das Modul automatisch im Hintergrund.

Update durchführen

Zip-Paket herunterladen

Die aktuelle Version 1.1 steht Ihnen als Lizenzinhaber im Download-Bereich Ihres Werbe-Markt.de-Accounts zur Verfügung. Wenn Sie über eine Lizenz, aber kein Kundenkonto verfügen, können Sie einen Link zum Zip-Paket auf der Download-Seite des Gambio-Moduls zur Ladezeitoptimierung (inzwischen: Modulverwaltung) anfordern.

Dateien hochladen

Nach dem obligatorischen Entpacken des Archivs laden Sie einfach den Inhalt des Verzeichnisses Werbe-Markt (also das Verzeichnis Ladezeitoptimierung) rekursiv (also alle enthaltenen Dateien und Ordern) in das gleichnamige Verzeichnis (GXModules/Werbe-Markt/Ladezeitoptimierung) Ihrer Gambio-Installation. Vorhandene Dateien überschreiben Sie dabei bitte.

Ladezeitoptimierung im Gambio-Admin aufrufen

Wenn Sie jetzt erwarten, hier wären irgendwelche Aktionen durchzuführen, muss ich Sie enttäuschen. Das Modul prüft bei Aufruf des Admin-Menüpunkts eigenständig, ob die Datenbank auf dem aktuellen Stand ist. Ist dies – wie beim ersten Aufruf nach Upload der neuen Dateien – nicht der Fall, erweitert es die Datenbank-Tabelle automatisch. Sie können also direkt mit der Aktivierung neuer Optionen fortfahren, wenn Sie möchten.

Kostenlose Testversion

Auch die kostenlosen Testversionen des Gambio-Moduls zur Ladezeitoptimierung für PHP 5.6 – 7.2 sind auf dem aktuellen Versionsstand 1.1. Wenn Sie bereits eine eine kostenlose Testversion (1.0 oder 1.1 Beta) installiert haben, gehen Sie für die Aktualisierung bitte genauso vor wie für die lizenzierte Version beschrieben. Andernfalls folgen Sie bitte der Anleitung zur Installation des Ladezeitoptimierungsmoduls in Ihrem Gambio-Shop. Mit einer Testversion für PHP 7.3 warten wir noch, bis der entsprechende ionCube-Loader das Beta-Stadium verlassen hat.

Ausblick

Caching für angemeldete Kunden

Zurecht besteht der Wunsch, das Caching auch für angemeldete Nutzer verfügbar zu machen. Es ist beim Surfen im Shop ganz einfach ein Unterschied wie Tag und Nacht, ob eine Seite aus dem Cache kommt oder mühsam generiert werden muss. Momentan profitieren davon nur nicht-angemeldete Besucher mit leerem Warenkorb und natürlich die Suchmaschinenbots. Die Verbesserung der Benutzererfahrung durch immens höhere Geschwindigkeit für angemeldete Kunden im Gambio-Shop steht deshalb ganz oben auf der Liste.

Erweitertes Lazy Loading

Je nach Einstellung gibt es im Onlineshop nicht sichtbare Bilder, die entweder erst nach Interaktion (z.B. Bewegung mit dem Mauszeiger) oder überhaupt nicht sichtbar werden. Geplant ist, das bereits im Modul vorhandene Lazy Loading auf Grafiken in aufklappbaren Bereichen auszuweiten.

Update: Wie angekündigt ist das erweiterte Lazy Loading für Gambio in Version 1.2 des Moduls enthalten.

Unterstützung für WebP

Seit gefühlt 10 Jahren (tatsächlich seit 2008) gilt WebP als das Bildformat für’s Web und soll als schlanker Ersatz für sowohl JPEGs als auch PNG-Grafiken dienen. Google tut gut daran, Druck auszuüben, endlich eine breite Akzeptanz für das Format zu erreichen. Auch Sie werden mit dem Ladezeitoptimierungsmodul Ihren Beitrag zu einem schnelleren Web mit Bildern in modernen Formaten leisten können. Denn Version 1.2 generiert Ihnen WebP-Bilder für Gambio ganz einfach via Knopfdruck.

Zeitplan und außerdem…

Vorrang hat aber zunächst die überfällige Version 1.3 des Affiliate-Moduls für Gambio. Und dann gibt es da noch einige weitere, teilweise seit Wochen fertige Gambio-Module, auf die der ein oder andere schon seit geraumer Zeit wartet. Die drei genannten Erweiterungen für das Gambio-Modul zur Ladezeitoptimierung stehen für Anfang 2019 auf dem Programm. Sie dürfen also gespannt sein.

»«

Schreiben Sie einen Kommentar