Product Custom Inputs: Konfiguration
Konfiguration von Product Custom Inputs im Sylius-Admin: shop-weiter Schalter, Felder definieren, acht Feldtypen mit Grenzen, Zuordnung zu Produkten und Praxisbeispiele.
Product Custom Inputs: Konfiguration
Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.
Das Plugin hat keine Config-Keys in config/packages/. Alles läuft über den Admin: einen Schalter für das ganze Plugin, die Felddefinitionen und die Zuordnung der Felder zu Produkten. Die Bezeichnungen unten entsprechen der deutschen Admin-Oberfläche (de_DE).
Einstellungsseite
Admin-Sidebar -> MMKreativ Plugins -> Produkt-Zusatzfelder (Seitentitel "Einstellungen für Produkt-Zusatzfelder", Route mmd_sylius_product_custom_inputs_plugin_admin_settings)
| Einstellung | Standard | Beschreibung |
|---|---|---|
| Aktiviert | An | Shop-weiter Schalter. Aus: Das Add-to-Cart-Formular zeigt keine Zusatzfelder mehr, die Shop API lehnt Schreibzugriffe mit 404 ab |
Der Schalter gilt für den ganzen Shop, nicht pro Channel. Bereits erfasste Werte bleiben sichtbar, und die Felddefinitionen lassen sich auch bei Deaktivierung weiter verwalten.
Über den Button "Zusatzfelder" auf der Einstellungsseite erreichst du die Liste der Felddefinitionen.
Das Admin-Präfix in den Pfaden dieser Doku (
/admin/...) hängt vonsylius_admin.path_namedeiner Installation ab.
Felder definieren
Die Liste ist ein Admin-Grid unter <Admin-Präfix>/product-custom-input-fields/ mit den Spalten Beschriftung, Feldtyp, Pflichtfeld und Position, sortiert nach Position. Neue Felder legst du über den Button zum Anlegen an, bestehende bearbeitest oder löschst du über die Zeilenaktionen, mehrere auf einmal per Bulk-Löschung.
Ein Feld ist global: Es gehört keinem einzelnen Produkt, sondern lässt sich beliebig vielen Produkten zuordnen. Pflichtfeld, Position und alle anderen Eigenschaften gelten überall gleich, es gibt keine Überschreibung pro Produkt.
Allgemeine Eigenschaften
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Beschriftung | Pflicht, pro Locale übersetzbar | |
| Platzhalter | Optional, pro Locale übersetzbar. Wird nur bei Einzeiligem Eingabefeld, Mehrzeiligem Eingabefeld und Nummernfeld angezeigt | |
| Feldtyp | Einzeiliges Eingabefeld | Einer der acht Typen unten |
| Pflichtfeld | Aus | Ohne Eingabe lässt sich das Produkt nicht in den Warenkorb legen |
| Position | 0 | Reihenfolge im Formular, aufsteigend |
Beschriftung und Platzhalter sind in der Datenbank auf 255 Zeichen begrenzt. Längere Werte werden nicht vom Formular abgefangen, sondern führen zu einem Datenbankfehler.
Feldtypen und ihre Grenzen
| Feldtyp im Admin | Wert | Grenzen |
|---|---|---|
| Einzeiliges Eingabefeld | text |
Mindestlänge, Maximale Länge |
| Mehrzeiliges Eingabefeld | textarea |
Mindestlänge, Maximale Länge |
| Nummernfeld | number |
Mindestwert, Maximalwert (jeweils ganze Zahlen), Schrittweite (z. B. 0.5) |
| Checkbox | boolean |
Bei Pflichtfeld muss der Haken gesetzt sein |
| Datumsfeld | date |
Frühestes Datum, Spätestes Datum, gesperrte Tage |
| Uhrzeitfeld | time |
Früheste Uhrzeit, Späteste Uhrzeit |
| Datums- und Uhrzeitfeld | datetime |
Frühestes und Spätestes Datum (inklusive bis 23:59), gesperrte Tage |
| Auswahlfeld | select |
Auswahlmöglichkeiten aus Wert und Beschriftung |
Diese Grenzen gelten im Storefront-Formular wie über die Shop API. Ist bei Text und mehrzeiligem Text keine maximale Länge gesetzt, gilt in beiden Wegen eine Obergrenze von 5000 Zeichen. Datum und Uhrzeit werden streng geprüft, Werte wie 2026-02-30 oder 25:00 sind ungültig.
Im Auswahlfeld des Storefront-Formulars werden Optionen mit leerem Wert ausgelassen, doppelte Werte zusammengeführt (die letzte Option gewinnt). Ist das Feld kein Pflichtfeld, gibt es zusätzlich eine leere Auswahl.
Gespeichert werden alle Werte als Text: Checkbox als 1 oder 0, Datum als YYYY-MM-DD, Uhrzeit als HH:MM, Datum und Uhrzeit als YYYY-MM-DD HH:MM.
Felder einem Produkt zuordnen
Die Zuordnung passiert nicht am Feld, sondern am Produkt: Im Admin-Formular des Produkts (Anlegen und Bearbeiten, Tab "Allgemein") wählst du im Feld "Zusatzfelder" ein oder mehrere bereits definierte Felder aus. Entfernst du ein Feld aus der Auswahl, wird nur die Zuordnung gelöst, das Feld und bereits erfasste Werte bleiben bestehen.
Praxisbeispiele
Individuelle URL bei einem Plugin-Produkt
| Eigenschaft | Wert |
|---|---|
| Beschriftung | Shop-URL |
| Platzhalter | https://dein-shop.de |
| Feldtyp | Einzeiliges Eingabefeld |
| Pflichtfeld | An |
| Maximale Länge | 255 |
Name zum Besticken einer Decke
| Eigenschaft | Wert |
|---|---|
| Beschriftung | Name für die Stickerei |
| Platzhalter | z. B. Anna |
| Feldtyp | Einzeiliges Eingabefeld |
| Pflichtfeld | An |
| Mindestlänge / Maximale Länge | 2 / 30 |
| Position | 10 |
Wunschtermin für eine Lieferung
| Eigenschaft | Wert |
|---|---|
| Beschriftung | Wunschtermin |
| Feldtyp | Datumsfeld |
| Pflichtfeld | Aus |
| Frühestes Datum | 2026-12-01 |
| Gesperrte Tage | 2026-12-24, 2026-12-25 |
Farbauswahl
| Eigenschaft | Wert |
|---|---|
| Beschriftung | Garnfarbe |
| Feldtyp | Auswahlfeld |
| Auswahlmöglichkeiten | rot = Rot, blau = Blau, gruen = Grün |
| Pflichtfeld | An |