Contao: Mit der mp_forms Erweiterung mehrseitige Formulare erstellen
Terminal42 stellt mit der Erweiterung mp_forms eine Möglichkeit zur Verfügung, mit der man ein in Contao generiertes Formular auf mehre Seiten (= Schritte) aufteilen kann. Leider ist die Erweiterung nicht sonderlich ausführlich dokumentiert, daher dachte ich, dass hier hier einmal kurz auf die Nutzung eingehe.
Installation und generelle Einrichtung
Nach der Installation erhält man verschiedene neue Funktionalitäten.
Ich gehe hier davon aus, dass ihr bereits über den Formulargenerator ein Formular mit euren gewünschten Feldern angelegt habt. In den Formulareinstellungen eines Formulars findet ihr zuerst ganz am Ende die neue Option „GET-Parameter“. Hier lässt sich der Parameter, der in der URL für die einzelnen Formularschritte verwendet wird, einstellen. Mit dem Parameter schritt
erhält man beispielsweise dann die URL www.meinedomain.de/formular.html?schritt=1
. Dies ist aber hauptsächlich eine kosmetische Anpassung.

Formularanpassungen
Dann findet man innerhalb eines Formulars den neuen Feldtyp „Seitenumbruch“. Dieses Feld setzt ihr überall dort ein, wo ihr mit einer neuen Seite anfangen wollt. Das Formular bleibt im Backend also in einem einzelnen Formular zusammengefasst und wird nur im Frontend durch die Benutzung der „Seitenumbruch“ Elemente in mehrere Seiten aufgeteilt. Wichtig ist hier, dass ihr die Felder im Seitenumbruch-Element richtig ausfüllt. Die „Zurück-" und „Absende-Schaltfläche“ könnt ihr einfach mit „Zurück“ und „Weiter“ ausfüllen. Das sind die beiden Buttons, die zur Navigation unter den auszufüllenden Feldern erscheinen. Dies müsst ihr für jeden Seitenumbruch separat angeben. Das Feld „Feldbezeichnung“ ist quasi als „Überschrift“ der einzelnen Schritte zu verstehen, und wird für die separate Navigation benötigt. Als Beispiel: Ihr habt zuerst vier Felder für Kontaktdaten im Formular. Dann fügt ihr den Seitenumbruch ein und gebt als „Feldbezeichnung“ „Kontakt“ ein. Die Bezeichnung gilt also immer für die vorangegangene Seite bzw. Felder. Die Seitenumbrüche fügt ihr dann so oft in eurem Formular ein, wie ihr mögt. Zu beachten ist nur noch folgendes: Ihr dürft das Formular nicht mit dem Contao-eigenen „Absendefeld“ beenden, um das Formular abzusenden, sondern müsst das Formular mit einem weiteren Seitenumbruch abschließen. Hier könnt ihr dann in der Absende-Schaltfläche von „Weiter“ auf z.B. „Formular absenden“ wechseln.

Navigationsmodul
Zusätzlich zu den Formularanpassung gibt es noch ein neues Modul, was eine Navigation für die einzelnen Schritte darstellt. Das Modul benutzt die Feldbezeichnung der einzelnen Pagebreaks um die Navigationsliste zu erstellen, die dann individuell gestylt werden kann. In der Modulkonfiguration muss man im Wesentlichen nur das entsprechende Formular als Referenz ausgewählt werden. Das Modul kann dann anschließend im Artikel, wo das Formular eingefügt wird, separat eingefügt werden.