Viele WordPress-Websites nutzen Plugins, die Seiten zwischenspeichern, Skripte und Stile zusammenfassen oder verzögern, oder Seiten in mehreren Sprachen ausliefern. Funnelforms 5 ist dafür vorbereitet. Dieser Artikel zeigt, was das Formular bereits mitbringt und woran du denkst, wenn ein Formular auf einer Seite nicht wie erwartet erscheint. Er gilt für Funnelforms Free und Pro; Teile, die es nur in Pro gibt, sind markiert.
Voraussetzungen
- Das Formular ist veröffentlicht und eingebettet.
Wo finde ich die Funktion?
Die Einstellungen liegen im jeweiligen Cache- oder Optimierungs-Plugin, nicht in Funnelforms.
Funktionen im Überblick
- Seiten mit Formular lassen sich zwischenspeichern. Das Formular steckt als Container samt seinen Daten im HTML der Seite.
- Das HTML enthält keine zeitlich begrenzten Sicherheitsschlüssel. Den Schlüssel zum Absenden holt sich das Formular im Browser, wenn Besucher beginnen.
- Das Skript des Formulars (
runtime.js) trägt Hinweise (data-no-optimize,data-cfasync,data-no-defer), die Optimierungs-Plugins davon abhalten können, es zu verzögern oder umzuschreiben. - Das Formular lädt das Stylesheet
runtime.css. Für Popups und für Formulare mit bestimmten Feldern und Funktionen kommt ein zweites hinzu:runtime-more.css. - Mehrsprachige Seiten mit WPML oder Polylang zeigen das Formular in der Sprache der Seite (nur Pro).
- Die eigene Seite eines Formulars (Adresse
/funnelforms/…) lädt Kopf und Fuß deiner Website, damit auch Einwilligungs-Tools laufen.
Schritt-für-Schritt-Anleitung
Nach einer Änderung am Formular
- Veröffentliche das Formular im Builder.
- Leere den Cache deines Caching-Plugins oder deines CDN für die Seiten mit dem Formular.
- Öffne die Seite in einem privaten Browserfenster und prüfe, ob die neue Version erscheint.
Wenn das Formular nicht erscheint oder ungestaltet aussieht
- Öffne die Seite in einem privaten Browserfenster, in dem du nicht angemeldet bist.
- Schalte in deinem Optimierungs-Plugin vorübergehend das Verzögern, Zusammenfassen oder Minimieren von JavaScript und CSS aus.
- Leere den Cache und lade die Seite neu.
- Erscheint das Formular jetzt richtig, nimm die Dateien des Formulars in die Ausnahmen des Plugins auf und schalte die Optionen wieder ein. Die Dateien liegen im Plugin-Ordner von Funnelforms unter
assets/runtime/:runtime.js,runtime.cssundruntime-more.css.
Erklärungen
Warum kann eine zwischengespeicherte Seite eine alte Version zeigen?
Das HTML der Seite enthält die veröffentlichte Version des Formulars als Daten. Speichert ein Plugin diese Seite zwischen, bleibt auch die alte Version darin, bis der Cache geleert wird. Beim Veröffentlichen leert Funnelforms keine Caches anderer Plugins.
Was passiert, wenn ein Formular geschlossen wird, während die Seite im Cache liegt? (nur Pro)
Zeitfenster, Eintragslimit, Passwort und Anmeldepflicht gibt es nur in Funnelforms Pro. Das Plugin prüft sie bei jedem Zugriff auf dem Server. Zeigt eine zwischengespeicherte Seite das Formular noch an, obwohl es geschlossen ist, bekommt der Besucher beim Absenden die Rückmeldung, dass es geschlossen ist.
Wie sicher ist ein zwischengespeichertes Formular?
Die Seite enthält keinen Schlüssel, der mit der Zeit abläuft, deshalb kann sie lange im Cache liegen. Das Formular fordert den Schlüssel erst an, wenn Besucher beginnen. Der Schlüssel gilt für dieses Formular, höchstens sechs Stunden und nur für ein Absenden. Zusätzlich prüft das Plugin ein verstecktes Feld, die Ausfüllzeit und die Zahl der Einträge je Besucher.
Was bewirken die Hinweise am Skript?
Das Skript des Formulars wird am Ende der Seite geladen und trägt die Attribute data-no-optimize="1", data-cfasync="false" und data-no-defer="1". Das sind Signale an Optimierungs-Plugins. Ob ein Plugin sie beachtet, entscheidet das Plugin und seine Einstellungen.
Wann lädt das Formular runtime-more.css?
Das zweite Stylesheet enthält die Gestaltung für Teile, die nicht jedes Formular hat: Popups und der Button in der Ecke, die Felder Termin, Adresse, Datei-Upload, Unterschrift, Wiederholgruppe und Bewertung, ein Dropdown mit Suche oder mit mehreren Antworten, außerdem zum Beispiel Quiz, Zeitlimit, Sprachwechsel, Zwischenspeichern, Downloads und Videos. Formulare ohne diese Teile laden nur runtime.css. Entfernt ein Optimierungs-Plugin unbenutzt wirkende Stile, kann genau dieses zweite Stylesheet fehlen.
Wie verhält sich das Formular auf mehrsprachigen Seiten? (nur Pro)
Hat das Formular die Sprache der Seite, zeigt es sie. Fehlt sie, kann WPML mit String Translation oder Polylang die Texte übersetzen. Die Texte des Formulars erscheinen dort unter dem Kontext „Funnelforms“. Nicht übersetzte Texte bleiben in der Standardsprache des Formulars. In Funnelforms Free gibt es die Anbindung an WPML und Polylang nicht, und ein Formular mit mehreren Sprachen erscheint dort nicht auf der Seite.
Best Practices
- Leere nach jedem Veröffentlichen den Cache der betroffenen Seiten.
- Teste Änderungen an der Optimierung deiner Website immer mit einem Blick auf eine Seite mit Formular, am besten auf eine mit Popup oder Termin-Feld.
Troubleshooting
| Problem | Ursache | Lösung |
|---|---|---|
| Die Seite zeigt die alte Version des Formulars. | Die Seite kommt aus dem Cache. | Leere den Cache der Seite oder des CDN. |
| Das Formular erscheint nicht, nur ein leerer Bereich. | Ein Plugin verzögert, verschiebt oder fasst das Skript des Formulars zusammen. | Nimm runtime.js in die Ausnahmen des Optimierungs-Plugins auf oder schalte die Option für JavaScript aus. |
| Ein Popup, ein Termin-Feld oder ein Upload sieht ungestaltet aus. | Das Optimierungs-Plugin hat runtime-more.css entfernt oder zusammengefasst. | Nimm runtime-more.css in die Ausnahmen für CSS auf und leere den Cache. |
| Das Formular erscheint erst nach der Einwilligung in einem Cookie-Tool. | Das Cookie-Tool blockiert Skripte, bis Besucher zustimmen. | Setze das Skript des Formulars in die Ausnahmen des Tools, wenn es ohne Einwilligung laufen soll. |
| „Dieses Formular braucht JavaScript. Bitte aktiviere JavaScript in deinem Browser.“ | JavaScript ist ausgeschaltet, oder das Skript wird nicht geladen. | Aktiviere JavaScript und prüfe, ob das Skript des Formulars geladen wird. |
| Ein mehrsprachiges Formular erscheint in der falschen Sprache. | Das Formular hat die Sprache der Seite nicht, und die Texte sind nicht übersetzt. | Übersetze das Formular im Builder oder die Texte in WPML bzw. Polylang (nur Pro). |
Tipps
- Für einzelne Caching- oder Optimierungs-Plugins gibt es in Funnelforms 5.0 keine eigenen Einstellungen. Die Hinweise in diesem Artikel gelten allgemein.
- Wenn du Unterstützung brauchst, hängt das Support-Formular in Funnelforms Pro Diagnosedaten an, in denen deine aktiven Plugins stehen. In Funnelforms Free findest du ähnliche Angaben unter Werkzeuge → Website-Zustand → Bericht.
FAQ
Muss ich Seiten mit Formular vom Cache ausnehmen? Nein. Das Formular ist dafür gebaut, mit der Seite zwischengespeichert zu werden.
Warum sehe ich meine Änderung nicht? Du hast sie vermutlich noch nicht veröffentlicht, oder die Seite liegt noch im Cache.
Funktioniert das Formular mit WPML und Polylang? In Funnelforms Pro ja: Das Formular folgt der Sprache der Seite, wenn es sie hat. Sonst übersetzen WPML String Translation oder Polylang die Texte.
Welche Dateien meint „die Dateien des Formulars“? runtime.js, runtime.css und runtime-more.css im Plugin-Ordner von Funnelforms unter assets/runtime/.