Skip to content

DmfTheOne ​

DmfTheOne ist ein flexibles CMS-Element für Shopware 6.7 Shopping Experiences. Es ersetzt starre Block-Layouts durch einen visuellen, Tree-basierten Builder: Redakteur:innen komponieren mehrspaltige, verschachtelbare Layouts direkt im Admin, ohne Entwickler-Eingriff. Ein integrierter KI-Assistent generiert vollständige Layouts aus Texteingaben, Bildern oder Sprachbefehlen.

Schnellinfo ​

Composer-Paketdmf/sw6-plugin-the-one-cms-element
Plugin-KlasseDmf\TheOneCmsElement\DmfTheOneCmsElement
NamespaceDmf\TheOneCmsElement
Shopware>=6.7.0
Pflicht-Dependencydmf/sw6-plugin-splide-slider
Repositorydmf / plugin-the-one-cms-element

Installation ​

bash
composer require dmf/sw6-plugin-the-one-cms-element
bin/console plugin:refresh
bin/console plugin:install --activate DmfTheOne
bin/console cache:clear
bin/console database:migrate --all DmfTheOne

DmfSplideSlider wird von Composer automatisch mitgezogen, muss aber separat aktiviert sein, da der Slider-Modus es voraussetzt:

bash
bin/console plugin:install --activate DmfSplideSlider

Voraussetzungen ​

AnforderungVersion
Shopware>=6.7.0
DmfSplideSlider*

Datenmodell: Rows · Cols · Items ​

Jedes Element ist ein verschachtelter Baum:

Element
 └─ Rows[]              ← äußere Layout-Reihen (optional als Splide-Slider)
     └─ Cols[]          ← responsive Spalten
         └─ children[]  ← Items (Text, Bild, Überschrift, Button …) und/oder innere Reihen
             └─ Rows[]  ← innere Reihen (max. 2 Spalten, max. 2 Ebenen tief)

Jeder Knoten (Row, Col, Item) trägt ein vollständiges Styling-Objekt:

KategorieFelder
SizesBreite (mobil/Tablet/Desktop), min-/max-Höhe, max-Breite
SpacesPadding und Margin (je 4 Seiten)
ColorsTextfarbe, Hintergrundfarbe, Rahmenfarbe, Rahmenbreite, Radius
AlignmentsFlex-Ausrichtungsklassen, responsiv
MaskingCSS clip-path: Kreis, Ellipse, Raute, Hexagon, Welle, Blob, benutzerdefiniertes SVG
AccessibilityBeliebige HTML-Attribute als Key-Value-Paare
KlassenBootstrap- oder Tailwind-Utility-Klassen
Inline-CSSRohes CSS für nicht abgedeckte Eigenschaften

CSS-Bibliothek ​

Das Plugin unterstützt Bootstrap 5 (Standard) und Tailwind CSS. Spaltenbreiten passen sich der gewählten Bibliothek an:

BreiteBootstrapTailwind
Volle Breitecol-12w-full
2 Spaltencol-lg-6lg:w-1/2
3 Spaltencol-lg-4lg:w-1/3
4 Spaltencol-lg-3lg:w-1/4

Die Bibliothek wird einmalig im Plugin konfiguriert und gilt für alle Elemente.

CSS-Bibliothek wechseln

Ein Wechsel nach dem Erstellen von Elementen kann bestehende Layouts brechen, die bibliotheksspezifische Klassennamen verwenden (z. B. col-lg-6, btn-primary). Prüfe alle Elemente nach einem Wechsel und passe die Klassen an.

Slider-Modus ​

Das gesamte Element lässt sich auf „Als Slider anzeigen" umstellen. Jede äußere Reihe wird dann zu einer Folie, das Rendering übernimmt DmfSplideSlider.

Template-System ​

Redakteur:innen können den aktuellen Elementzustand als benanntes Template in der Datenbank persistieren:

  • Speichern: aktuellen Zustand unter einem Namen sichern (max. 2 MB)
  • Laden: Template aus einer Galerie auswählen und auf das Element anwenden
  • Überschreiben/Löschen: bestehende Templates verwalten
  • Rund 20 eingebaute Vorlagen: Banner, Card-Grids, Slider, Hero-Sektionen u. a.

Datenbank-Tabelle the_one_template ​

SpalteTypAnmerkung
idBINARY(16)UUID, Primärschlüssel
nameVARCHAR(255)Unique
valueJSONSerialisierter Element-Zustand
created_at / updated_atDATETIME(3)

KI-Assistent ​

Der integrierte KI-Assistent generiert vollständige Layouts und nimmt gezielte Änderungen an bestehenden Elementen vor:

  • Textprompt: beschreibe das gewünschte Layout in natürlicher Sprache
  • Bildinput: lade einen Screenshot, Mockup oder Wireframe hoch, die KI liest Struktur und Stil direkt aus dem Bild
  • Spracheingabe: diktiere den Prompt per Mikrofon
  • Bearbeitungsmodus: bitte die KI, ein bestehendes Element zu verändern (z. B. „Füge einen Button unterhalb des Bildes ein")
  • Vorschau vor Anwenden und Rückgängig des letzten Applies

Der Assistent läuft vollständig serverseitig: der Browser sendet Prompt und optionales Bild an den Shopware-Admin-Endpunkt, der seinerseits die Anthropic-API aufruft. Der API-Schlüssel verlässt den Server nie.

Bildinput nur mit Anthropic

Das Hochladen von Bildern erfordert den Anthropic-Anbieter. Die maximale Bildgröße beträgt 3,75 MB (unkomprimiert).

Konfiguration ​

Admin-Pfad: Einstellungen → System → Plugins → DmfTheOne → Konfigurieren.

KI-Parser Einstellungen ​

FeldTypDefaultZweck
aiProvidersingle-selectanthropicKI-Anbieter: Anthropic (Claude)
aiApiKeypassword–Anthropic-API-Schlüssel
aiModelsingle-selectclaude-haiku-4-5-20251001Modell: Haiku 4.5 (schnell/günstig), Sonnet 4.6 (empfohlen), Opus 4.7 (leistungsstark)
aiRateLimitint20Max. KI-Anfragen pro Admin-Benutzer pro Stunde. 0 = deaktiviert
aiUsePromptCacheboolfalseZwischenspeichert den System-Prompt bei Anthropic. Spart bis zu 90 % der Prompt-Token bei Folge-Anfragen
aiValidationboolfalseValidiert die KI-Ausgabe und sendet bei Fehlern eine automatische Korrekturanfrage
aiEnableLoggingboolfalseSendet Prompts und Antworten zur Qualitätsverbesserung an einen konfigurierbaren Endpunkt. Die Shop-URL wird nicht übertragen
aiLoggingEndpointtext–URL des Empfänger-Skripts für die Nutzungsprotokollierung
aiLoggingSecretpassword–Authentifizierungs-Secret für den Logging-Endpunkt

Modellwahl

Sonnet 4.6 ist für die meisten Projekte empfehlenswert: gutes Preis-Leistungs-Verhältnis und sehr gute Layoutqualität. Haiku 4.5 ist die schnellste und günstigste Option. Opus 4.7 liefert die besten Ergebnisse für besonders komplexe Layouts.

Prompt-Cache

Das erstmalige Schreiben des Caches kostet den doppelten normalen Eingabepreis. Alle Folge-Anfragen innerhalb der Cache-Gültigkeit kosten nur 10 % des normalen Eingabepreises. Mindestanforderung: 4.096 Tokens (Haiku 4.5) bzw. 1.024 Tokens (Sonnet/Opus 4.x).

CSS-Bibliothek ​

FeldTypDefaultZweck
cssLibrarysingle-selectbootstrapCSS-Framework für Spaltenklassen und Utilities: bootstrap oder tailwind

Utility-Klassen ​

FeldTypDefaultZweck
utilityClasseseditor–Eigene responsive Klassen mit Desktop-, Tablet- und Mobilwert. Werden automatisch in the-one.scss geschrieben. Nach Änderung bin/console theme:compile ausführen

Markenfarben (KI-Standard) ​

FeldTypDefaultZweck
colorTextDarktext–Textfarbe auf hellem Hintergrund (Hex)
colorTextLighttext–Textfarbe auf dunklem Hintergrund (Hex)
colorBgDarktext–Dunkle Hintergrundfarbe (Hex)
colorBgLighttext–Helle Hintergrundfarbe (Hex)
colorBorderDarktext–Rahmenfarbe für dunkle Bereiche (Hex)
colorBorderLighttext–Rahmenfarbe für helle Bereiche (Hex)

API-Endpunkte ​

Alle Routen liegen im Scope api und erfordern Admin-Auth.

MethodeRouteBeschreibung
POST/api/_action/the-one/template/saveTemplate speichern (max. 2 MB)
GET/api/_action/the-one/template/listAlle Templates auflisten
GET/api/_action/the-one/template/load?templateName=Template nach Name laden
PUT/api/_action/the-one/template/updateTemplate überschreiben
DELETE/api/_action/the-one/template/delete?templateName=Template löschen
GET/api/_action/the-one/placeholder-media-idPlatzhalter-Medien-ID abrufen
POST/api/_action/the-one/ai-parseLayout per KI generieren oder bearbeiten

Verwandt ​

Hinweise ​

DmfSplideSlider erforderlich

DmfTheOne setzt DmfSplideSlider per Composer voraus. Die Bibliothek wird automatisch mitgezogen, muss aber separat aktiviert werden. Ohne aktiven DmfSplideSlider rendert der Slider-Modus nicht.