Caldera Forms und PHP 8

Hinweis: Diesen Beitrag gibt es auch in Englischer Sprache auf civicrm.org

Für komplexe Formulare mit CiviCRM-Integration setzen immernoch viele WordPress-Nutzer*innen auf Caldera Forms. Um Bugfixes zu teilen und Weiterentwicklungen des von den ursprünglichen Entwickler*innen nicht mehr betreuten Plugins zu teilen, haben sich daher einige User zur Caldera Forms Collaboration Initiative zusammengetan.

Alle acht Teilnehmenden unseres letzten Treffens am 2. Mai 2023 sind CiviCRM-Implementierungsberater*innen, bei denen mal mehr, mal weniger Kund*innen aus verschiedenen Gründen an Caldera gebunden sind. Im Detail sind es gleich mehrere Gründe, die Caldera für sie attraktiv oder (noch?) alternativlos machen: Die Conditionals, die sehr nutzer*innenfreundliche Oberfläche des Formular-Builders, die Add-ons z. B. für die Bezahlintegrationen oder das User Add-on, die ausgefeilte Integration mit gleich mehreren Plugins, die Remote-Einbindung mit CMRF oder schlicht der hohe Migrationsaufwand komplexer Formulare. Entsprechend herrschte Einigkeit, dass die PHP-8-Kompatibilität von Caldera Forms ein wichtiges Thema ist.

Es stellen sich aber auch einige Fragen – hier ein paar Antworten:

Ist Caldera Forms nicht schon PHP-8-kompatibel? – Jain. Etliche berichteten in der Tat, dass sie Caldera Forms produktiv auf PHP 8.0+ betreiben und keine Probleme haben. Für einzelne Funktionen (z. B. die Berechnungsfelder) gibt es jedoch offenbar PHP-Fehler. Nach unserem Eindruck sind diese für sich genommen schnell zu beheben. Im übrigen erwies sich bisher die Kompatibilität mit dem WordPress-Core als robust und angesichts der langen Security-Updates von WordPress sind wir hier auch weiterhin optimistisch.

Ok, warum fixen wir die dann nicht einfach die PHP-Probleme und gut ist? – Gute Frage! Caldera Forms verfügt über eine Vielzahl von Abhängigkeiten, zahlreiche Add-ons und Integrationen und eine eigene komplexe Build-Umgebung. Auch dank Kevins Engagement haben wir das alles zur Hand. Aber: Wollen wir Expertise hinsichtlich der Build-Umgebung aufbauen, um in Zukunft auch andere ggf. notwendige Anpassungen leichter bewältigen zu können oder wollen wir „nur“ die PHP-Fehler fixen? Welche Add-ons und Integrationen sollen überprüft werden? Wie gehen wir praktisch vor?

Und nun? – Um es kurz zu machen: Wir haben einen Plan :slight_smile:

  1. Wir werden konkrete PHP-8-Inkompatibilitäten beheben. Dafür werden wir den Community-Fork von Caldera Forms auf dem CiviCRM GitLab nutzen.
    Es gibt viele Möglichkeiten, Dich hier einzubringen: berichte Fehler, teile Fixes, mach’ mit beim Testen oder unterstütze andere dabei mit Zeit oder Funding. Wenn GitLab für Dich unvertraut ist, sprich uns im Mattermost-Kanal an, es wird Dich sicherlich gern jemand unterstützen.
  2. Wir werden etwas tiefer in die Caldera-Build-Umgebung eintauchen. Konkret wird zunächst Klaas das tun und seine Erkenntnisse dann teilen.
    Das ist eine aufwändige Arbeit – wir freuen uns auch hier über Unterstützung z. B. durch Funding von Arbeitsstunden.
  3. Wir werden priorisieren – zunächst werden wir uns das Caldera-Forms-Plugin selbst vornehmen, anschließend die wichtigsten in Gebrauch befindlichen Plugins und Add-ons anschauen. Welche das sind, halten wir ebenfalls im GitLab in diesem Issue fest.

Klingt nach einem guten Plan, oder? Nur: Ist das nicht eine Menge Arbeit? Jepp. Genau deshalb tun „wir“ uns ja zusammen. Wenn Du ebenfalls Caldera nutzt und Dich einbringen möchtest, sind das hier deshalb auch Deine Kanäle:

Danke an alle, die einen Beitrag leisten!

3 „Gefällt mir“