Product Custom Inputs
Konfigurierbare Eingabefelder pro Produkt für Sylius - acht Feldtypen, Validierung, Anzeige in Warenkorb, Checkout und Kundenkonto, Shop API für Headless-Clients
Product Custom Inputs
Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.
Überblick
Mit Product Custom Inputs definierst du im Admin beliebig viele Eingabefelder pro Produkt, die Kunden beim Hinzufügen zum Warenkorb ausfüllen. Ein Feld hat ein Label, einen Platzhalter, ein Pflichtfeld-Flag und typabhängige Grenzen (Länge, Wertebereich, Datumsbereich, Auswahloptionen). Die Eingabe gehört zur jeweiligen Bestellposition und bleibt in Warenkorb, Checkout, Bestellbestätigung, Kundenkonto und Admin-Bestellansicht sichtbar.
Typische Einsätze: eine individuelle URL bei einem Plugin-Produkt, der Name zum Besticken einer Decke, ein Wunschtermin oder eine Größenauswahl.
Kein Session-Umweg: Ein Sylius-Warenkorb ist eine Bestellung im Status "cart". Die Werte werden deshalb direkt an der Bestellposition gespeichert, ohne Zwischenspeicher.
graph LR
A["Admin: Feld definieren"] --> B["Feld einem Produkt zuordnen"]
B --> C["Storefront: Add-to-Cart-Formular"]
B --> D["Shop API: POST custom-inputs"]
C --> E["Wert an Bestellposition"]
D --> E
E --> F["Anzeige: Warenkorb, Checkout, Konto, Admin"]
Dokumentation
| Seite | Inhalt |
|---|---|
| Installation | Installation, Setup-Command, Update, Deinstallation |
| Konfiguration | Feldtypen, Admin-Oberfläche, Zuordnung zu Produkten, Praxisbeispiele |
| Storefront | Add-to-Cart-Formular, Anzeige-Hooks, Template-Override |
| Shop API | Endpunkte, Request-Beispiele, Fehlerformat |
| Erweiterbarkeit | Twig-Funktion, Hooks, Repositories, Menü-Gruppe |
| Fehlerbehebung | Symptome, bekannte Einschränkungen, FAQ |
| Technik | Architektur, Entities, Tabellen, Migrationen, Tests |
Features
| Feature | Beschreibung |
|---|---|
| Acht Feldtypen | Einzeiliger Text, mehrzeiliger Text, Zahl, Checkbox, Datum, Uhrzeit, Datum und Uhrzeit, Auswahl |
| Wiederverwendbare Felder | Ein Feld ist global definiert und lässt sich mehreren Produkten zuordnen |
| Übersetzbar | Label und Platzhalter pro Locale |
| Typabhängige Validierung | Länge, Min/Max, Schrittweite, Datums- und Zeitgrenzen, gesperrte Tage, Auswahloptionen |
| Anzeige überall | Warenkorb, Checkout-Seitenleiste, Bestellübersicht, Kundenkonto und Admin-Bestellung |
| Dual-Mode | Storefront-Formular und Shop API für Headless-Clients |
| Kill-Switch | Shop-weiter Schalter zum Abschalten des Plugins im Admin |
Anforderungen
| Anforderung | Version | Hinweise |
|---|---|---|
| PHP | ^8.3 | |
| Sylius | ^2.2 | Getestet gegen Sylius 2.2 und 2.3 |
| Symfony | ^7.4 | |
| API Platform | ^4.2.1 oder ^5.0 | Die CI testet beide Major-Versionen gegen beide Sylius-Minors |
| Twig | ^3.16 |
Lizenz
Kommerzielle Lizenz: eine Sylius-Installation pro Lizenz (alle Channels sowie Entwicklungs- und Staging-Umgebung), keine Weitergabe, Updates für 12 Monate ab Kaufdatum.
Support
E-Mail: support@markus-michalski.net