Skip to content

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-Paketdmf/sw6-plugin-splide-slider
Plugin-KlasseDmf\SplideSlider\DmfSplideSlider
NamespaceDmf\SplideSlider
Shopware~6.7.0
Wird benötigt vondmf/sw6-guppy-theme, dmf/sw6-plugin-cms-custom-elements, dmf/sw6-plugin-the-one-cms-element

Installation

bash
composer require dmf/sw6-plugin-splide-slider
bin/console plugin:refresh
bin/console plugin:install --activate DmfSplideSlider
bin/console theme:compile

Pflicht-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-Slider
  • DmfGuppyEmotionworldElements, Slider-Varianten der Emotionworld-Elemente
  • DmfCmsCustomElements, Slider-basierte CMS-Elemente konsumieren die geteilte Splide-Instanz
  • dmf/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.