DmfSplideSlider
DmfSplideSlider ist die zentrale Implementierung der Splide-Slider-Funktionalität für Guppy-Plugins. Es eliminiert Code-Duplikation, indem Templates und Logik nur einmal an einem Ort leben, Theme und ergänzende CMS-Plugins binden den Slider via Twig-Includes ein.
Schnellinfo
| Composer-Paket | dmf/sw6-plugin-splide-slider |
| Plugin-Klasse | Dmf\SplideSlider\DmfSplideSlider |
| Namespace | Dmf\SplideSlider |
| Shopware | ~6.7.0 |
| Wird benötigt von | dmf/sw6-guppy-theme, dmf/sw6-plugin-cms-custom-elements, dmf/sw6-plugin-the-one-cms-element |
Installation
composer require dmf/sw6-plugin-splide-slider
bin/console plugin:refresh
bin/console plugin:install --activate DmfSplideSlider
bin/console theme:compilePflicht-Dependency
Wenn du DmfGuppyTheme installierst, zieht Composer dieses Plugin automatisch mit. Du musst es trotzdem explizit aktivieren, falls noch nicht geschehen.
Verwendung
DmfSplideSlider registriert keine eigenen CMS-Elemente. Stattdessen stellt es Templates und Storefront-JS bereit, die andere Plugins via sw_include einbinden.
Anwendungsbeispiele im Ökosystem:
DmfGuppyTheme, Produktbild-Slider, Listing-SliderDmfGuppyEmotionworldElements, Slider-Varianten der Emotionworld-ElementeDmfCmsCustomElements, Slider-basierte CMS-Elemente konsumieren die geteilte Splide-Instanzdmf/sw6-plugin-the-one-cms-element, externes CMS-Element-Plugin (außerhalb des Guppy-Repos)
Splide als globale Instanz
DmfSplideSlider ist auch die Single Source of Truth für die JavaScript-Bibliothek. Es bündelt Splide einmal und stellt den Konstruktor global unter window.DmfSplide bereit. Abhängige Plugins (etwa DmfCmsCustomElements) konsumieren diese globale Instanz, statt eine eigene Kopie der Bibliothek mitzuliefern. So wird Splide pro Seite nur einmal ausgeliefert.
Lade-Reihenfolge
Konsumenten lesen window.DmfSplide erst beim Mounten des Sliders (nicht beim Modul-Import), damit es keine Race-Condition zwischen den Storefront-Bundles gibt. Die Composer-Dependency stellt sicher, dass DmfSplideSlider aktiv ist.
Konfiguration
DmfSplideSlider bringt keine Plugin-Konfiguration mit. Die Steuerung erfolgt vollständig über die Twig-Parameter beim Einbinden, etwa Anzahl sichtbarer Slides, Autoplay, Pagination, Breakpoints.
Hinweise
Single Source of Truth
Vor DmfSplideSlider haben mehrere Plugins eigene Splide-Implementierungen ausgeliefert oder sich gegenseitig überschrieben. Wenn du Custom-Code findest, der das Splide-Template direkt aus DmfGuppyTheme überschreibt: das ist Legacy. Migriere auf DmfSplideSlider und binde den Slider per Include ein.
Versionskompatibilität
DmfSplideSlider und DmfGuppyTheme werden gemeinsam veröffentlicht. Halte beide Plugins auf kompatiblen Versionen, sonst können Template-Pfade auseinanderlaufen.