Stoppe den Geschwindigkeitsverlust durch Contact Form 7
Entdecke, warum Contact Form 7 deine WordPress-Website verlangsamt und lerne, wie du das Problem beheben kannst. Lass deine Seite wieder so schnell laufen wie Usain Bolt – mit meinem effektiven Lösungsvorschlag!
Du hast deine WordPress-Website eingerichtet, bist stolz wie Oskar auf das Ergebnis und plötzlich ist sie langsamer als eine Schnecke auf Valium? Vielleicht hat sich der Übeltäter sogar unbemerkt in dein System geschlichen, getarnt als dein Freund und Helfer. Die Rede ist von Contact Form 7, einem der beliebtesten Kontaktformular-Plugins in WordPress. Aber keine Sorge, ich zeige dir, warum das passiert und vor allem, wie du es beheben kannst.
Inhaltsverzeichnis
Contact Form 7 – dein Freund und Feind zugleich
Contact Form 7 ist wie ein Eisbecher mit Sahne und Kirsche: Es ist unwiderstehlich, extrem praktisch und für viele ein Must-Have auf ihrer Website. Aber wie beim Eisbecher gibt es auch hier einen Haken. Es kann deine Website verlangsamen und das erheblich.
Das Problem liegt in der Art und Weise, wie Contact Form 7 arbeitet. Für jede Seite deiner Website lädt das Plugin sämtliche CSS- und JavaScript-Dateien, unabhängig davon, ob dort überhaupt ein Kontaktformular zu sehen ist oder nicht. Stell dir vor, du würdest für einen Sonntagsspaziergang im Park deine komplette Campingausrüstung mitschleppen, inklusive Zelt und Gaskocher – ziemlich unnötig und ermüdend, oder? Genau so fühlt sich deine Website mit Contact Form 7 an. Der unnötige Code bzw. das sinnlose Laden von ungenutzten Code muss weg:
Plugin-Lösung
Schritt 1: Den Übeltäter zur Rede stellen
Nun, da wir wissen, dass Contact Form 7 der Übeltäter ist, wollen wir es zur Rede stellen. Die gute Nachricht ist, dass es Plugins gibt, die das problematische Verhalten von Contact Form 7 in den Griff bekommen. Eines dieser Plugins ist das Asset CleanUp-Plugin. Damit kannst du bestimmen, welche CSS- und JavaScript-Dateien auf welchen Seiten geladen werden sollen.
Schritt 2: Aufräumen und beschleunigen
Lade das Plugin herunter und installiere es. Sobald es aktiv ist, gehst du zu den Einstellungen von Asset CleanUp. Hier kannst du nun gezielt die CSS- und JavaScript-Dateien ausschließen, die von Contact Form 7 geladen werden, aber auf bestimmten Seiten nicht benötigt werden. Stell dir vor, du wärst ein DJ, der gezielt nur die Songs auflegt, die die Partygäste wirklich hören wollen. Genau das tust du hier für deine Website: Du spielst nur die Dateien ab, die wirklich gebraucht werden.
Die gute Nachricht ist, dass dieses Aufräumen deiner Website nicht nur die Geschwindigkeit verbessern kann, sondern auch das Ranking in Suchmaschinen positiv beeinflussen kann. Denn die Ladezeit einer Seite ist ein wichtiger Faktor für das Google Ranking.
Zum Schluss noch ein kleiner Tipp: Achte darauf, immer regelmäßige Backups deiner Website durchzuführen, besonders bevor du Änderungen vornimmst, wie das Hinzufügen oder Löschen von Plugins. Sollte etwas schiefgehen, kannst du einfach auf eine frühere Version zurückgreifen.
Schritt 3: Alternativen in Betracht ziehen
Wenn dir das alles zu viel Aufwand ist, kannst du darüber nachdenken, zu einem leichteren Kontaktformular-Plugin zu wechseln. Es gibt viele Alternativen zu Contact Form 7, die genauso funktional, aber weniger ressourcenintensiv sind. Plugins wie WPForms oder Formidable Forms sind dafür bekannt, dass sie effizienter sind und weniger Auswirkungen auf die Website-Geschwindigkeit haben.
Manuelle-Lösung:
Jetzt wollen wir die Contact Form 7 JS- und CSS-Dateien vorm Aufrufen hindern, ohne ein Plugin zu nutzen. Diese zwei Codeschnipsel müssen wir in unsere functions.php-Datei einfügen.
Schritt 1: Child Theme erstellen
Ich empfehle dir, ein Child-Theme zu erstellen! Auf diese Weise bleibt dein Original-Theme unverändert, und wenn etwas nicht richtig funktioniert, kannst du das Child-Theme einfach deaktivieren. Hier siehst du, wie man ein Child-Theme in WordPress erstellt.
Wenn du kein aus irgendeinem Grund kein Child-Theme hast oder willst, kann du das auch in deinem Original-Theme machen. Denke nur dran, dass bei einem Update des Themes die functions.php wieder zurück gesetzt wird!
Schritt 2: Codeschnipsel in die functions.php
Füge den unten aufgeführten Codeschnipsel einfach in die Datei functions.php deines WordPress-Themes ein. Gehe zu Design> Theme-Datei-Editor > [wählen das Child-Theme] > functions.php.
add_filter( 'wpcf7_load_js', '__return_false' );
add_filter( 'wpcf7_load_css', '__return_false' );
Hiermit verhindern wir, dass Contact Form 7 auf allen Seiten geladen wird. Der Code weist WordPress an, die Javascript- und CSS-Dateien nicht zu laden, die Contact Form 7 zur Ausführung auf jeder Seite benötigt.
Als Nächstes werden wir die Contact Form 7-Dateien auf bestimmte Seiten laden, die Formulare enthalten. Alles, was wir tun müssen, ist die Seiten zu identifizieren, die die Plugin-Dateien benötigen, und wir werden sie laden.
Auf meiner Website habe ich nur unter ‚kontakt‚ das Kontaktformular im Einsatz. Wenn du ebenfalls die Kontaktseite als einzige Seite mit einem Formular besitzt, dann füge folgenden Code in deine functions.php – direkt unter den add_filter-Funktionen von weiter oben ein. Lautet deine Seite mit dem Kontaktformular nicht Kontakt, dann ändere den Namen um (aus ‚kontakt‚ wird dann bei dir z.B. ‚kontaktformular‚).
add_action('wp_enqueue_scripts', 'load_wpcf7_scripts');
function load_wpcf7_scripts() {
if ( is_page('kontakt') ) {
if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
wpcf7_enqueue_scripts();
}
if ( function_exists( 'wpcf7_enqueue_styles' ) ) {
wpcf7_enqueue_styles();
}
}
}
Deine functions.php könnte dann bei dir so aussehen:
Mit dem obigen Codeschnipsel wird WordPress angewiesen, die Contact Form 7-Skripte nur auf der Kontaktseite zu laden. Andernfalls geben die Skripte aufgrund der add_filter-Funktionen, die wir zuvor hinzugefügt haben, ‚false‚ zurück.
Solltest du die Kontaktformulare auf weiteren Seiten nutzen, musst du mit einem ‚array‚ arbeiten. Was das nun wieder ist und wie das funktioniert, kannst du hier nachlesen.
Fazit
Die Geschwindigkeit deiner Website ist entscheidend für den Erfolg deines Online-Auftritts. Contact Form 7, obwohl äußerst nützlich und beliebt, kann deine Website verlangsamen. Aber das heißt nicht, dass du auf attraktive Kontaktformulare verzichten musst. Mit Tools wie dem Asset CleanUp-Plugin kannst du das Problem lösen und deine Website wieder flott machen. Alternativ kannst du auch zu einem leichteren Plugin wechseln wie: WPForms, Formidable Forms, Ninja Forms oder Gravity Forms greifen, oder du verzichtest ganz auf Plugins und regelst das mit etwas Code in der functions.php.
In jedem Fall ist es wichtig, dass du die Performance deiner Website regelmäßig überprüfst und optimierst. Denn nur so kannst du sicherstellen, dass deine Website-Besucher nicht vor einer langsamen Seite flüchten. Ich versuche mich auch immer ein Stückchen mehr zu verbessern ;)