Dein Warenkorb ist leer

Dropper 100.19 Release Notes

Unsere neue Dropper Version bringt volle Kompatibilität mit JTL-Shop 5.2, ein umfangreiches HTML-Caching für Drops, Erweiterungen im Frontend Editor und vieles mehr!

Dropper & Drops in JTL-Shop 5.2

Mit der neuesten JTL-Shop Version 5.2 hat sich die grundlegende API des Shops an vielen Stellen geändert. Außerdem ist PHP 8.1 nun Grundvoraussetzung für den Betrieb des JTL-Shops. Wir haben Dropper an die neuen Anforderungen angepasst, Dropper 100.19 ist voll kompatibel mit JTL Shop 5.2 und PHP 8.1.

Natürlich bleiben die aktuelle Dropper Version dabei abwärtskompatibel mit anderen Versionen von JTL-Shop 5 und sogar JTL-Shop 4!

Wichtig: Dropper & Drops zuerst aktualisieren

Bitte aktualisiert zunächst Dropper und dann eure Drops via Paketverwaltung. Danach könnt ihr das Update auf JTL-Shop 5.2 angehen.

Neue Drop Versionen

Auch viele unsere Drops mussten im Zuge der neuen Anforderungen aktualisiert werden. Zeitgleich mit Dropper 100.19 veröffentlichen wir daher neue Versionen dieser Drops:

  • Article Slider 1.1.6
  • Contact Form 2.0.12
  • Filter Info 1.0.3
  • Flex Menu 1.1.0
  • Hotspot Banner 1.0.8
  • News Box 1.0.9
  • Popup 1.0.12
  • USP 1.0.3
  • Vendor Box 2.0.0

Die Drop-Updates werden euch in der Paketverwaltung angeboten, sobald ihr Dropper auf Version 100.19 aktualisiert habt.

Drop Caching

Nun zu den sichtbaren Features - allen voran zu den neuen Caching-Optionen. Alle Drops können jetzt statisch gecacht werden!

Was bedeutet das? Inhalte, die ihr mit Drops präsentiert, werden nicht bei jedem Seitenaufruf neu erstellt, sondern beim ersten Aufruf zwischengespeichert und nachfolgend nur noch als statisches HTML ausgeliefert.

Gerade bei Drops, die komplexe Operationen und Datenbankabfragen durchführen (bspw. Article Slider mit umfangreichen Filteroptionen), kann dadurch massiv Performance gewonnen werden.

Vorraussetzung JTL-Shop Cache

Der Drop Cache nutzt Funktionen des JTL-Shop Caches nach. Stellt daher sicher, dass dieser aktiviert und konfiguriert ist.

Caching aktivieren

Ihr könnt das Caching für jedes Drop individuell in den Einfügeoptionen aktivieren. Es stehen euch 3 Optionen zur Verfügung:

  • An: das Drop wird immer gecacht
  • Aus: das Drop wird nie gecacht
  • Vererbt (Standard): das Drop wird nur dann gecacht, wenn es von einem anderen Drop verlinkt wurde, welches das Caching aktiviert hat

Cache Bereich in den Drop Einfügeoptionen

Die Option "Vererbt" wird in jedem neuen Drop standardmäßig aktiviert und in bereits bestehenden Drops gesetzt. Ihr könnt also bspw. das Drop-Caching in einem Flex-Layout aktivieren und sorgt damit dafür, dass alle darin verlinkten Drops ebenfalls gecacht werden. Ohne euer Zutun bleibt das Caching jedoch zunächst inaktiv, denn es kann auch ungewollte Nebeneffekte haben.

Exkurs: bisheriges Caching in Drops

Einige unserer Drops bieten bereits Caching Optionen. So könnt ihr im Flex Menu optional die Inhalte eurer Dropdowns cachen, im USP Drop sind dynamische Texte auf Wunsch ebenfalls cachbar. Dieses Prinzip erweitern wir nun auf alle Drops und deren Ausgabe!

Abhängigkeiten

Ein Cache-Eintrag ist immer von bestimmten Parametern abhängig. Ändert sich einer dieser Parameter, wird ein neuer Cache-Eintrag erstellt.

Ändert ihr die Inhalte eines Drops (oder läuft die Lebenszeit eines Eintrags ab) wird der Cache invalidiert, der Inhalt neu erzeugt und gecacht.

Im Standard sind Drop Caches abhängig von der aktiven Kundengruppe des Besuchers und der aktiven Sprache des Shops. Ändert sich eines von beiden, wir ein neuer Eintrag im Cache erstellt und beim nächsten Aufruf mit diesen Bedingungen ausgeliefert.

Zusätzlich könnt ihr folgende Abhängigkeiten definieren:

  • Gerätetyp
  • Seitentyp
  • Listingzustand
  • Artikelseite
  • URL
  • Eigene Caching-ID

Mit diesen Abhängigkeiten könnt ihr auf bestimmte Anzeigebedingungen eurer Drops eingehen. Zeigt bspw. ein Powerslide je nach Gerät (Desktop vs. Mobilgerät) andere Slides an, empfiehlt sich die zusätzliche Abhängigkeit "Gerätetyp". Sonst würden ggf. die falschen Inhalte für das jeweilige Gerät ausgespielt.

Mit der "eigenen Caching ID" können versierte Nutzer weiterführende Abhängigkeiten via Smarty definieren.

Cache Lifetime

Drops, die dynamische Inhalte darstellen, solltet ihr mit entsprechend angepassten Lifetime (oder gar nicht) cachen. Ein Beispiel ist ein Article Slider, der ein schnell wechselndes Sortiment (Sonderangebote, Neu im Sortiment) darstellen soll. Hier obliegt es eurer Einschätzung, wie dynamisch und aktuell die Inhalte eurer Drops sind bzw. sein sollen.

Definiert ihr keine Cache Lifetime, wird der Standardwert des Objekt Caches des JTL-Shops gesetzt.

Nachteile von Caching

Bei der Lifetime haben wir bereits einige Nachteile des Caching angedeutet. Zeitkritische Inhalte können mit aktiven Caching nicht optimal dargestellt werden.

Zeigen euer Drops wichtige Informationen wie bspw. Artikelpreise, solltet ihr diese ggf. vom Caching ausnehmen, um Missverständnisse und rechtliche Probleme auszuschließen.

Drops via Drop-Editor einfügen

Bisher war es mit dem Drop Editor nur möglich, bestehende Drops zu editieren. Mit Dropper 100.19 ändern wir das.

Wenn ihr den Drop-Editor für eure Seite aktiviert und ihn öffnet, könnt ihr nun auch neue Drops an bestimmte Punkte platzieren. Diese Punkte sind die Mountpunkte, die ihr aus dem OnPage Composer kennt.

Anders als beim OPC werden die hier eingefügten Drops jedoch prinzipiell auf jeder Seite eingefügt, auf dem der entsprechende Mountpoint exisitert. Es sei denn, ihr schränkt dies mit unseren Darstellungsfilter ein.

Hilfreich: Dropper bietet euch gleich passende Darstellungsfilter an, je nachdem wo ihr den Drop Editor geöffnet habt. Ihr könnt diese Vorschläge natürlich frei ändern oder ergänzen.

Feedback

Natürlich freuen wir uns über Feedback zur neuen Version! Sollten Probleme auftauchen, meldet euch gern bei uns.

Changelog

Allgemein

  • JTL-Shop 5.2 Kompatibilität
  • Feature: OPC-Mountpunkte können jetzt vom Dropper Frontend Editor genutzt werden, um Drops in die Seite einzufügen
  • Feature: Icons erhalten automatisch eine Quellcode-Attribution
  • Feature: Drop Caching, ermöglicht es Drops statisch als HTML zu cachen
  • Feature: Neue Option "Keine Suchergebnisse vorhanden" zum Darstellungsfilter "Listingzustand" hinzugefügt
  • Bugfix: Admin-Weiterleitungen auf HTTPS waren unter bestimmten Umständen fehlerhaft
  • Bugfix: Besserer Umgang mit SVG-Dateien in der Medienverwaltung
  • Bugfix: Darstellungsfilter "Suche" war unter JTL-Shop 5 fehlerhaft

Entwickler

  • Drops können jetzt auch ganze Template-Dateien und Template-Blöcke ersetzen bzw. erweitern. Dieses Feature ist derzeit noch experimentell und kann über ein define('DROPPER_TEMPLATE_EXTEND', true); aktiviert werden. Hinterher sollte der Template-Cache geleert werden.
  • Drop Daten sind jetzt auf höchster Ebene durch ein ArrayObject repräsentiert. Dadurch ändert sich nichts für die Programmierung der Drops, allerdings sehen Debug-Ausgaben dadurch jetzt anders aus.