Shopware-Bordmittel
Das CMS-Element "Formular" des Kerns, im Quelltext gelesen: drei Typen, fünf Einstellungen, feste Felder im Template, keine Speicherung.
Vier Spalten, sechs Tafeln. Sechs Zeilen gehen gegen die eigene Spalte aus - das ist kein Versehen, sondern der Grund, warum ein Vergleich überhaupt etwas wert ist.
Der Kern hat sieben feste Felder. Die anderen drei Spalten bauen ihre Felder selbst.
| Merkmal | Shopware-Bordmittel | Bezahlter Plan | Formular Manager |
|---|---|---|---|
| Zahl der Eingabetypen | nein: sieben feste Felder | nein: sieben feste Felder | ja: 23 Typen |
| Text, Mehrzeilig, E-Mail, Telefon | ja: genau diese, fest | ja: genau diese, fest | ja: alle vier |
| Dropdown, Einzelauswahl, Mehrfachauswahl | nein: keine Auswahlfelder | nein: keine Auswahlfelder | ja: alle drei, mit Vorauswahl |
| Zahl und Schieberegler | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: beide, mit Minimum, Maximum, Schrittweite |
| Datum, Uhrzeit, Datum + Uhrzeit | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: alle drei, mit Bereich und Raster |
| Datei- und Bild-Upload | nein: kein Upload-Feld | nein: kein Upload-Feld | ja: beide, in den Medien-Manager |
| Farbauswahl | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: mit Standardfarbe |
| Passwortfeld | nein: nicht vorgesehen | nein: nicht vorgesehen | nein: gibt es hier nicht |
| Anrede und Land aus den Shopware-Stammdaten | teils: Anrede ja, Land nein | teils: Anrede ja, Land nein | ja: beide, ohne zweite Liste |
| Zustimmung als eigener Typ | teils: fester Datenschutzhinweis | teils: fester Datenschutzhinweis | ja: eigener Typ, fachlich benannt |
| Inhaltselemente: Überschrift, Freitext, Meldungen | nein: nur die Überschrift des Elements | nein: nur die Überschrift des Elements | ja: acht, davon vier Meldungsarten |
Hier ist der Unterschied nicht ja oder nein, sondern woran die Breite hängt.
| Merkmal | Shopware-Bordmittel | Bezahlter Plan | Formular Manager |
|---|---|---|---|
| Gruppen mit eigener Überschrift | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: werden zu fieldset und legend |
| Mehrere Felder nebeneinander | teils: feste Aufteilung im Template | teils: feste Aufteilung im Template | ja: Breite je Feld |
| Unterschiedliche Breiten in einer Zeile | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: 12er-Raster, z. B. 3 + 3 + 6 |
| Spaltenzahl je Bildschirmgröße | nein: nicht vorgesehen | nein: nicht vorgesehen | teils: eine Breite; schmal bricht die Storefront um |
| Reihenfolge ändern | nein: feste Reihenfolge | nein: feste Reihenfolge | ja: Sortierpfeile im Baum |
| Eigene CSS-Klasse je Feld | nein: nicht vorgesehen | nein: nicht vorgesehen | nein: gibt es hier nicht |
| Beschriftungen je Sprache | ja: über die Textbausteine | ja: über die Textbausteine | ja: Beschriftung, Platzhalter und Optionen |
Der Punkt, an dem sich ein Formular von einer Feldliste unterscheidet.
| Merkmal | Shopware-Bordmittel | Bezahlter Plan | Formular Manager |
|---|---|---|---|
| Ein Feld hängt von einem anderen ab | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: an jedem Element |
| Bedingung an einer ganzen Zeile oder Gruppe | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: nimmt alles darin mit |
| Operatoren | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: zwölf, je nach Typ der Quelle |
| Ohne Neuladen, und der Server prüft nach | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: im Browser und vor der Prüfung erneut |
Alle können Erlebniswelten. Danach wird es dünner.
| Merkmal | Shopware-Bordmittel | Bezahlter Plan | Formular Manager |
|---|---|---|---|
| Erlebniswelten | ja: ein Element, drei feste Typen | ja: ein Element, drei feste Typen | ja: Block und Element |
| Als Popup oder in einem neuen Fenster | nein: nicht vorgesehen | nein: nicht vorgesehen | nein: gibt es hier nicht |
| Produktdetailseite | nein: nur über die Erlebniswelt der Seite | nein: nur über die Erlebniswelt der Seite | ja: drei Positionen, drei Darstellungen |
| Bestellung im Kundenkonto | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: Bestellliste und Bestelldetail |
| Verschiedene Formulare je Produkt | nein: nicht vorgesehen | nein: nicht vorgesehen | ja: Zuordnung mit Priorität und Regel |
Zwei Spalten schicken eine E-Mail und sind fertig.
| Merkmal | Shopware-Bordmittel | Bezahlter Plan | Formular Manager |
|---|---|---|---|
| Die Einsendung wird gespeichert | nein: Ereignis und E-Mail, keine Tabelle | nein: Ereignis und E-Mail, keine Tabelle | ja: mit Werten und Beschriftungen |
| Historie mit Kontext im Admin | nein: nichts zu sehen | nein: nichts zu sehen | ja: Formular, Kontext, Kunde, Kanal, Datum |
| Export | nein: nichts zu exportieren | nein: nichts zu exportieren | ja: CSV, auch für gelöschte Formulare |
| E-Mail an eine feste Adresse | ja: über einen Flow | ja: über einen Flow | ja: Schalter und Adresse am Formular |
| Antwortadresse des Absenders setzen | hängt an der Mailvorlage des Flows | hängt an der Mailvorlage des Flows | nein: gibt es hier nicht |
| E-Mail-Blacklist gegen Spam | nein: nicht vorgesehen | nein: nicht vorgesehen | nein: gibt es hier nicht |
| Captcha | ja: Honeypot, Basic, reCAPTCHA v3 | ja: zusätzlich Friendly Captcha | teils: die drei aus dem Kern, Friendly Captcha nicht |
Preise am Store-Listing abgelesen. Maßgeblich ist der Store.
| Merkmal | Shopware-Bordmittel | Bezahlter Plan | Formular Manager |
|---|---|---|---|
| Grundpreis | im Shop enthalten | ab dem kostenpflichtigen Plan | Grundfunktion kostenlos |
| Was mehr kostet | nichts, es gibt nichts mehr | der ganze Plan | mehr Formulare und Elemente |
Das CMS-Element "Formular" des Kerns, im Quelltext gelesen: drei Typen, fünf Einstellungen, feste Felder im Template, keine Speicherung.
Derselbe Kern plus die kostenpflichtige Erweiterung von Shopware. Ihre Liste lizenzierter Funktionen ist im Quelltext einsehbar und enthält keine einzige formularbezogene. Ergänzt wird ein viertes Captcha.
Diese Erweiterung. Jede Angabe in dieser Spalte steht auf einer der Seiten dieser Website und ist dort am Quelltext des Plugins nachgewiesen.
Drei Fälle, in denen eine Erweiterung nichts hinzufügt.
Wer eine Kontaktseite braucht und mit Anrede, Name, E-Mail, Telefon, Betreff und Nachricht auskommt, ist mit dem eingebauten Element fertig. Es kostet nichts und ist in zwei Minuten gesetzt.
Der Newsletter-Typ führt in den Empfängerkreis samt doppelter Bestätigung. Das ist ein eigener Vorgang, kein Formular - und ihn nachzubauen wäre ein Fehler.
Der dritte Typ deckt den gesetzlich vorgesehenen Fall ab. Auch dafür braucht es nichts weiter.
Das Kontaktformular des Kerns
Ein selbst gebautes Formular
Links sieben Felder, die im Template stehen. Rechts acht, die jemand ausgewählt hat - zwei davon erzeugen je zwei Eingaben. Dieselbe Storefront, dieselben Bausteine.
Das Element bleibt, wo es ist. Eine Erweiterung ersetzt es nicht - sie steht daneben, für die Fälle, die feste Felder nicht abdecken.
Im Shopware Store stehen über achtzig Erweiterungen zum Thema Formular. Eine davon steht oben in der Tafel; die übrigen unterscheiden sich stark, bis hin zu Baukästen, die einzeln bezahlte Add-ons für Produktanfragen, Bestellfelder und mehrstufige Formulare mitbringen. Statt sie alle aufzuzählen, hier die drei Fragen, die sich an jeder prüfen lassen. Auch an dieser.
Ein eigenes Formular in Shopware ist kein Hexenwerk: ein Template, eine Route, eine Validierung, ein Mailer. Für ein Formular, das einmal gebaut und nie geändert wird, ist das ein ehrlicher Weg.
Der Aufwand fängt beim zweiten Formular an, und beim dritten wieder von vorn. Dazu kommt alles, was nach dem Absenden passiert: speichern, auflisten, filtern, exportieren, übersetzen.
Die Frage ist nicht, ob du es bauen kannst, sondern wer es in zwei Jahren ändert. Ein Formular in der Administration ändert die Person, die den Text schreibt. Ein Formular im Quelltext ändert die Person, die den Quelltext pflegt.
Wenn auf jede Anfrage erst "Um welche Bestellung geht es?" folgt, fehlt dem Formular ein Feld - oder der Kontext.
Eine für Beratung, eine für Reklamationen, eine für Händler - weil ein Formular mit festen Feldern nur einen Fall abdeckt.
Wenn die Frage "wie viele Anfragen kamen letzten Monat?" nur mit einer Suche im Postfach zu beantworten ist, fehlt die Historie.
Ein Feld, das die Hälfte nicht ausfüllt, gehört meistens nicht weg, sondern hinter eine Bedingung.