Wenn du das reCAPTCHA Logo in Contact Form 7 auf allen Seiten entfernen möchtest, bist du hier richtig. Wir zeigen dir in einfachen Schritten wie du Logo und Programmdateien nur noch auf den wirklich benötigten Seiten lädst.
Nach dem letzten Update von Contact Form 7 (5.1 und später) wurde die Google reCAPTCHA Integration auf die V3 umgestellt. Grundsätzlich ist das ein sinnvolles Update, da die reCAPCTHA API in V3 im Hintergrund arbeitet, so dass keine aktive Nutzereingabe mehr notwendig ist.
Leider hat das aber auch zur Folge, dass nunmehr das Google reCAPTCHA Logo samt Datenschutzerklärung und Nutzungsbedingungen auf allen Seiten ausgegeben wird. Gleichzeitig werden natürlich auch die benötigten Dateien mit dem Programmcode auf jeder Seite geladen. Beides will man nicht wirklich haben.
Abhilfe kann man natürlich schaffen indem man wieder auf eine ältere Version mit der reCAPCTHA API in V2 umstellt. Keine sinnvolle Lösung.
reCAPTCHA Logo in CF7 entfernen:
Über folgende kleine Funktion kannst du das reCAPCTHA Logo auf den Seiten, auf denen es nicht benötigt wird, entfernen. Das Logo wird dann nur noch auf Seiten in denen du Kontaktformulare von CF7 eingebunden hast angezeigt. Gleiches gilt für die Programmdateien, die nur noch dort geladen werden, wo sie auch wirklich benötigt werden. Also nur auf den Seiten auf denen ein CF7 Formular eingebunden ist.
function cf7_dequeue_scripts() { $load_scripts = false; if( is_singular() ) { $post = get_post(); if( has_shortcode($post->post_content, 'contact-form-7') ) { $load_scripts = true; } } if( ! $load_scripts ) { wp_dequeue_script( 'contact-form-7' ); wp_dequeue_script('google-recaptcha'); wp_dequeue_style( 'contact-form-7' ); } } add_action( 'wp_enqueue_scripts', 'cf7_dequeue_scripts', 99 );
Kopiere den Code von oben und füge ihn am Ende deiner „functions.php“ ein.
Übrigens: Wie du auf die neue API in V3 umsteigst und wie du den Website-Schlüssel und den geheimen Schlüssel generierst, erfährst du hier auf der offizielen Plugin-Seite von Contact Form 7.
reCAPTCHA Logo mit Plugin entfernen:
Seit der Version 5.3 von Contact Form 7 funktioniert die oben genannte Funktion nicht mehr so einfach. Glücklicherweise gibt es ein kleines performantes Plugin Namens „Invisible reCaptcha for WordPress„, das den Job zuverlässig erledigt.
Hier lädst du dir das Plugin aus dem Repository:
Im Anschluss aktivierst du das Plugin und verknüpfst es über die Einstellungen mit deinem generierten Website-Schlüssel und dem geheimen Schlüssel von Google ReCaptcha. Jetzt musst du nur noch auswählen wo das ReCaptcha-Badge angezeigt, sowie die Skripte geladen werden sollen. Sinnvoll ist beim Login, Registrieren & Passwort vergessen, in den Kommentaren und natürlich bei den Formularen. Optional lässt es sich auch mit WooCommerce oder Buddypress verwenden. Das Plugin ist kostenlos.
Josef S. meint
Habe es soeben probiert – funktioniert leider gar nicht. Der Code wird im Frontend oberhalb des Headers angezeigt…
wpexpert meint
Hallo Josef,
du musst den Code in der functions.php eingeben. Mittlerweile würde ich aber das Plugin empfehlen das weiter unten im Artikel empfohlen wird.
Bob meint
Funktioniert nicht mit Version 5.3.2. Bei mir wird auf allen Seiten und Beiträgen die JS-, CSS- und recaptcha-Dateien geladen. Überall erscheint der verdammte Badge. Ich verzweifel langsam …
Die Macher von CF7 sollten schnell was gegen dieses unsinnig Verhalten des Plugins tun. Ansonsten werden ihnen reihenweise die User davonlaufen und das Rating sinken. 2021 kann sich keiner mehr eine solche Performance-Bremse erlauben.
wpexpert meint
Ich habe den Artikel bereits aktualisiert, dort ist eine neue Variante per Plugin beschrieben, die auch mit der aktuellen WP-Version funktioniert.
Dennis meint
Funktioniert mit der neuen Version von CF7 auf einmal nicht mehr 🙁
wpexpert meint
Ich habe den Artikel aktualisiert. So funktioniert es auch mit der aktuellen Version wieder.
Stefan Gerold meint
Welche funktions.php meinst du und wo liegt die? Unter plugins > contact-form-7 > admin > includes > ist es die admin-functions.php? Vielen Dank für deine Hilfe 🙂
wpexpert meint
Nein die functions.php befindet sich in deinem Theme-Ordner, idealerweise ist das ein Child-Theme, wenn du dort Änderungen vornimmst, dann behälst du auch die Update-Funktion des Main-Themes.
Uwe meint
Habe den Code schon lange in Gebrauch und er funktionierte super, gut wenn man sich auskennt 🙂
Nun habe ich soeben das Contact Form 7 upgedatet auf Version 5.2 und nun ist das reCAPCTHA Logo wieder auf allen Seiten vorhanden.
Viel Schlimmer ist, daß sich dadurch die Ladezeiten der Seiten extrem verschlechtern.
Es wäre schön den oben genannten Code an das neue Update anzupassen, damit der Code wieder wie gewohnt funktioniert.
Vielen Dank im Voraus!!!
Timo meint
Ich bekomme das recaptcha auf meiner Webseite irgendwie nicht ganz entfernt – vielleicht kann jemand helfen?
Ich möchte es ganz entfernt haben nicht nur das Logo…
Margit Nowotny meint
Großartig! Gut erklärt und einfach zu nutzen. Danke!
Nicky Hellfritzsch meint
Sehr sehr gute Anleitung. Ich habe sehr lange gesucht, um das Logo auszublenden. Jetzt funktioniert es sogar auf mobilen Geräten! N:
Sebastian meint
Super, danke – für die Anleitung.
Das sollte im Plugin als Standard definiert sein.
Georg meint
Vielen Dank für den super Tipp. Hat einwandfrei funktioniert.
Code einfügen und pfeift! Thx! 🙂
Karin meint
Es funktioniert genau wie beschrieben.
Vielen lieben Dank!
Kirstin meint
Danke hierfür. War super hilfreich und hat ganz einfach geklappt!
WPexpert meint
Sehr gerne Kirstin! Schau dir auf deiner Seite unbedingt noch die SSL-Verschlüsselung an. Aktuell läuft deine Website nur unter http.