Contact Form 7 einrichten – Vollständige Anleitung 2026 von Adrian Thommes

Warum Contact Form 7 noch immer erste Wahl ist

Seit 2007 gibt es Contact Form 7 – und kein anderes WordPress-Kontaktformular-Plugin kommt auch nur annähernd an seine Verbreitung heran. Aktuell läuft CF7 auf mehr als 5 Millionen WordPress-Websites weltweit. Das Entwicklerteam um Takayuki Miyoshi veröffentlicht regelmäßig Updates und reagiert schnell auf Sicherheitslücken.

Was CF7 von moderneren Drag-and-Drop-Formularbauern wie WPForms oder Gravity Forms unterscheidet: Es ist konsequent schlank gebaut. Kein aufgeblähtes Backend, kein Pagebuilder-Lock-in, keine Pflicht-Abonnements für grundlegende Funktionen. Für ein Standard-Kontaktformular auf einer WordPress-Website ist CF7 in 2026 nach wie vor eine der besten Entscheidungen – vorausgesetzt, man richtet es vollständig ein.

CF7 auf einen Blick:

  • Kostenlos – Kernfunktionen ohne Bezahlschranken
  • Flexibel – Beliebige Felder über Form-Tags kombinierbar
  • AJAX-basiert – Formular sendet ohne Seitenreload
  • Mehrsprachig – Vollständig übersetzt, WPML-kompatibel
  • Erweiterbar – Breites Ökosystem an Add-ons und Hooks
  • Aktiv entwickelt – Regelmäßige Sicherheits- und Feature-Updates

CF7 installieren und aktivieren

1

Plugin im WordPress-Dashboard installieren

Im WordPress-Admin-Bereich unter Plugins → Neues Plugin hinzufügen nach „Contact Form 7" suchen. Das Plugin von Takayuki Miyoshi auswählen, auf Jetzt installieren klicken und anschließend aktivieren.

Nach der Aktivierung erscheint im linken Menü der Eintrag Kontaktformulare. Dort findest du bereits ein vorkonfiguriertes Standardformular, das als Ausgangspunkt dient.

2

Formular auf einer Seite einbinden

Beim Öffnen eines Formulars siehst du oben einen Shortcode, etwa: [contact-form-7 id="abc123" title="Kontaktformular 1"]

Diesen Shortcode fügst du in den Block-Editor (Gutenberg) deiner Kontaktseite ein – entweder über den Shortcode-Block oder direkt in einem HTML-Block. Das Formular erscheint dann sofort im Frontend.

Tipp für mehrere Formulare: CF7 erlaubt beliebig viele Formulare – etwa eines für Kontakt, eines für Bewerbungen, eines für Rückrufwunsch. Jedes bekommt seinen eigenen Shortcode und kann individuell konfiguriert werden.

Das Formular konfigurieren: Felder und Tags

Das Herzstück von CF7 ist der Form-Tag-Generator. Er erzeugt strukturierte Kurznotationen – sogenannte Form-Tags – für jedes Formularfeld. Ein Klick auf einen Tag-Typ öffnet ein Konfigurationsfenster, in dem alle Eigenschaften des Feldes eingestellt werden.

Die wichtigsten Form-Tag-Typen

  • [text] – Einzeiliges Texteingabefeld (Name, Betreff, Unternehmen)
  • [email] – E-Mail-Adressfeld mit automatischer Formatprüfung
  • [tel] – Telefonnummer-Feld, auf Mobilgeräten mit Nummernpad
  • [textarea] – Mehrzeiliges Nachrichtentextfeld
  • [select] – Auswahlfeld / Dropdown mit definierten Optionen
  • [checkbox] – Mehrfachauswahl mit Checkboxen
  • [radio] – Einzelauswahl mit Radio-Buttons
  • [file] – Datei-Upload-Feld (für Bewerbungen, Anhänge)
  • [acceptance] – Zustimmungs-Checkbox für DSGVO-Einwilligung
  • [submit] – Abschicken-Button

Pflichtfelder und Platzhalter

Ein Asterisk nach dem Tag-Typ macht das Feld zum Pflichtfeld: [text* your-name]. Das Formular lässt sich dann nur absenden, wenn dieses Feld ausgefüllt ist. Über das Attribut placeholder lässt sich ein Beschriftungstext direkt im Feld anzeigen:

[text* your-name placeholder "Ihr Name*"] [email* your-email placeholder "Ihre E-Mail-Adresse*"] [tel your-phone placeholder "Telefon (optional)"] [textarea your-message placeholder "Ihre Nachricht"] [submit "Nachricht senden"]

Die Syntax mag anfangs ungewohnt wirken – nach dem ersten Formular geht es schnell von der Hand. Wichtig: Tags werden im Formular-Editor direkt als Text eingetippt oder per Klick auf den Tag-Typ-Button eingefügt und im Frontend automatisch in HTML-Elemente umgewandelt.

E-Mail-Einstellungen: Damit Nachrichten wirklich ankommen

Das ist der Bereich, in dem die meisten CF7-Nutzer Fehler machen – und der Grund, warum Kontaktanfragen spurlos verschwinden. Im Reiter E-Mail konfigurierst du, was nach dem Absenden des Formulars passiert.

3

E-Mail-Konfiguration richtig einrichten

An: Die Empfängeradresse – idealerweise eine Adresse auf deiner eigenen Domain (z.B. info@deineseite.de), keine Gmail- oder Freemailkonten. Das verbessert die Zustellbarkeit deutlich.

Von: Hier muss eine Adresse deiner eigenen Domain stehen – nicht die Adresse des Formulareinsenders. Viele Hoster blockieren E-Mails, die von fremden Domains versendet werden. Richtig: wordpress@deineseite.de

Reply-To: Dieser Header sorgt dafür, dass beim Klick auf „Antworten" in deinem E-Mail-Programm automatisch die Adresse des Formulareinsenders eingetragen wird. Unbedingt setzen: [your-email]

Von: WordPress <wordpress@deineseite.de> Antwort an: [your-name] <[your-email]> An: info@deineseite.de Betreff: Neue Kontaktanfrage: [your-subject] Absender: [your-name] E-Mail: [your-email] Telefon: [your-phone] Nachricht: [your-message]

Bestätigungsmail an den Absender

Über E-Mail (2) lässt sich eine automatische Bestätigung an den Formulareinsender senden. Einfach die Checkbox „Verwende E-Mail (2)" aktivieren und eine eigene Bestätigungsnachricht formulieren. Das verbessert die Nutzererfahrung erheblich – jeder möchte wissen, dass seine Anfrage angekommen ist.

DSGVO-konforme Datenschutz-Checkbox einbauen

Wer ein Kontaktformular auf einer deutschen Website betreibt, muss die DSGVO-Anforderungen erfüllen. CF7 bietet dafür den Acceptance-Tag – eine Zustimmungs-Checkbox, ohne die das Formular nicht abgesendet werden kann. Kein Nice-to-have, sondern rechtliche Pflicht.

4

Acceptance-Tag korrekt einbauen

Im Formular-Editor direkt vor dem Submit-Button einfügen. Der Link zur Datenschutzerklärung wird innerhalb des Tags als HTML-Link eingebaut:

[acceptance datenschutz] Ich habe die <a href="/datenschutz/">Datenschutzerklärung</a> gelesen und bin mit der Verarbeitung meiner Daten zur Kontaktaufnahme einverstanden.* [/acceptance]

Damit die Checkbox auch tatsächlich als Pflichtfeld funktioniert, im Reiter Zusätzliche Einstellungen folgende Zeile eintragen:

acceptance_as_validation: on

Ohne diesen Eintrag kann das Formular trotz nicht gesetztem Häkchen abgesendet werden – was den Datenschutzzweck ad absurdum führt. CF7 speichert Formulardaten standardmäßig nicht in der WordPress-Datenbank, was aus Datenschutzsicht ein Vorteil ist. Wer Einträge archivieren möchte, kann das mit dem offiziellen Flamingo-Plugin nachrüsten – mit entsprechend angepasster Datenschutzerklärung.

Spam-Schutz mit Turnstile und Honeypot

Kontaktformulare sind ein Lieblingsmittel von Spambots. Ohne Schutz landet man schnell bei dutzenden sinnlosen Einsendungen täglich. Die gute Nachricht: CF7 bringt seit Version 5.6 native Unterstützung für Cloudflare Turnstile mit – die datenschutzfreundlichste und technisch effektivste Lösung, die derzeit verfügbar ist.

Cloudflare Turnstile einrichten

Cloudflare Turnstile ist eine kostenlose Alternative zu Google reCAPTCHA. Es erkennt Bots im Hintergrund – ohne dass echte Besucher ein Rätsel lösen müssen. Keine Bildauswahl, kein Klick auf Ampeln, keine Datenübertragung an Google. In der DSGVO-Diskussion ein erheblicher Vorteil.

5

Turnstile aktivieren

1. Kostenloses Cloudflare-Konto erstellen und unter „Turnstile" eine neue Site registrieren – dort erhältst du Site Key und Secret Key.

2. In WordPress unter Kontaktformulare → Integration die Turnstile-Keys eintragen und speichern. CF7 bindet den Schutz automatisch in alle Formulare ein.

Honeypot als zusätzlicher Schutz

Als ergänzende Maßnahme empfiehlt sich das Plugin Contact Form 7 Honeypot. Es fügt unsichtbare Felder in das Formular ein, die für echte Nutzer nicht sichtbar sind. Bots, die alle Felder automatisch ausfüllen, verraten sich dadurch – und ihre Einsendung wird stillschweigend geblockt. Kein Performanceverlust, keine Datenschutzbedenken.

  • Google reCAPTCHA v2 – Funktioniert, überträgt aber Nutzerdaten an Google (DSGVO-kritisch)
  • reCAPTCHA v3 – Unsichtbar, aber noch invasivere Datensammlung
  • Veraltete CAPTCHA-Plugins – Oft Performance-Bremse, kein echter Schutz mehr

SMTP: Die Lösung für ausbleibende E-Mails

Das häufigste Problem mit CF7 ist nicht das Plugin selbst – es sind ausbleibende E-Mails. WordPress nutzt standardmäßig die PHP-Funktion mail(), die von vielen Hostern eingeschränkt ist oder von Spamfiltern zuverlässig geblockt wird. Die Ursache lässt sich auf einen Nenner bringen: fehlende E-Mail-Authentifizierung.

Die Lösung: einen dedizierten SMTP-Server für den E-Mail-Versand konfigurieren. Das Plugin WP Mail SMTP ist hierfür der Standard. Es leitet alle WordPress-E-Mails (auch CF7) über einen authentifizierten Mailserver weiter – zum Beispiel über den Mailserver deines Hosters, Gmail Workspace, SendGrid oder Mailgun.

Wichtig: Damit E-Mails zuverlässig zugestellt werden, müssen SPF, DKIM und DMARC für deine Domain korrekt konfiguriert sein. Diese DNS-Einträge authentifizieren deinen Mailserver und verhindern, dass E-Mails im Spam landen oder zurückgewiesen werden.

Ob SPF, DKIM und DMARC für deine Domain korrekt eingerichtet sind, lässt sich schnell prüfen:

DMARC · DKIM · SPF Checker – Kostenlos prüfen Analysiere sofort die E-Mail-Authentifizierung deiner Domain und finde heraus, warum E-Mails im Spam landen.

Weiterleitung nach dem Absenden einrichten

Standardmäßig zeigt CF7 nach dem Absenden eine kurze Erfolgsmeldung direkt im Formular an. Wer stattdessen auf eine separate Danke-Seite weiterleiten möchte – etwa um das Absenden per Google Analytics als Conversion zu tracken – hat zwei Möglichkeiten.

Option 1: JavaScript-Weiterleitung

Den folgenden Code-Schnipsel im Theme oder über einen Custom-Code-Plugin (z.B. Code Snippets) einbinden:

document.addEventListener('wpcf7mailsent', function(event) { window.location.href = '/danke/'; }, false);

Option 2: Plugin-Lösung

Das Plugin CF7 Redirect ergänzt in jedem CF7-Formular einen eigenen Reiter für Weiterleitungseinstellungen – ohne Code, direkt im WordPress-Dashboard konfigurierbar. Für Agenturen und WordPress-Projekte ohne eigene Theme-Dateien die komfortablere Lösung.

Für alle, die ihre WordPress-Installation umfassend betreiben möchten, lohnt ein Blick auf den professionellen Umgang mit dem CMS: Was eine gute WordPress-Agentur im Saarland dabei leistet – von der technischen Einrichtung über Sicherheit bis zur laufenden Pflege.

Häufige Fehler und wie du sie behebst

„This email address does not belong to the same domain"

Diese Warnung erscheint im E-Mail-Reiter, wenn im Von-Feld eine Adresse steht, die nicht zur Domain der Website gehört. Lösung: Im Von-Feld eine Adresse der eigenen Domain eintragen (z. B. wordpress@deineseite.de), und im Feld Zusätzliche Header den Reply-To-Header setzen: Reply-To: [your-email]

„This field can be empty depending on user input" (Betreff)

Wenn der Betreff aus einem Formularfeld gezogen wird, kann er leer sein – was Spamfilter triggert. Entweder das Betreff-Feld als Pflichtfeld definieren ([text* your-subject]) oder einen festen Betreff vorgeben: Neue Anfrage von [your-name]

Formular sendet ab, aber es kommt keine E-Mail

Checkliste für diesen Fall:

  • SMTP-Plugin (WP Mail SMTP) installiert und konfiguriert?
  • SPF- und DKIM-Einträge für die Domain korrekt gesetzt?
  • Spam-Ordner des Empfängers geprüft?
  • E-Mail-Adresse im „An"-Feld korrekt eingetragen?
  • Hosting-Anbieter hat PHP mail() nicht deaktiviert?

Formular schickt Spam durch

Cloudflare Turnstile noch nicht aktiviert, oder der Honeypot fehlt. Für hartnäckigen Spam zusätzlich das Plugin Akismet Anti-Spam einbinden – CF7 unterstützt Akismet nativ und filtert damit erkannte Spam-Einsendungen heraus, bevor sie als E-Mail zugestellt werden. Mehr zur generellen Absicherung deiner WordPress-Website gibt es in meinem Leitfaden zur WordPress-Sicherheit.

Formular funktioniert nicht nach Theme-Update

Wenn die JavaScript-basierte AJAX-Übertragung nach einem Update nicht mehr funktioniert, ist oft ein JavaScript-Konflikt die Ursache. Das Browser-Entwickler-Konsole (F12 → Konsole) zeigt den Fehler. Häufige Ursachen: doppelt geladenes jQuery, fehlerhafte Theme-Skripte oder Caching-Probleme.

Häufige Fragen zu Contact Form 7

Warum kommen Contact Form 7 E-Mails nicht an?
Der häufigste Grund: WordPress nutzt standardmäßig PHP mail(), das von vielen Hostern geblockt oder von Spamfiltern abgefangen wird. Lösung: WP Mail SMTP installieren und E-Mails über einen authentifizierten SMTP-Server versenden. Zusätzlich SPF, DKIM und DMARC für die Domain korrekt konfigurieren – diese DNS-Einträge sind für zuverlässige E-Mail-Zustellung unverzichtbar.
Ist Contact Form 7 DSGVO-konform?
CF7 selbst speichert keine Formulardaten in der Datenbank – ein klarer Datenschutzvorteil. DSGVO-konform wird das Formular, wenn eine Einwilligungs-Checkbox (Acceptance-Tag) mit Datenschutzlink eingebaut ist und „acceptance_as_validation: on" in den zusätzlichen Einstellungen steht. Bei Turnstile statt reCAPTCHA fließen keine Daten an Google.
Was ist besser: Contact Form 7 oder WPForms?
Für einfache Kontaktformulare ist CF7 kostenlos und völlig ausreichend. WPForms bietet einen intuitiveren visuellen Builder, aber die meisten nützlichen Funktionen sind kostenpflichtig. Für technisch versierte WordPress-Nutzer oder Agenturen ist CF7 wegen seiner Flexibilität und Schlankheit oft die bessere Wahl.
Wie baue ich eine DSGVO-Checkbox in CF7 ein?
Mit dem Acceptance-Tag: [acceptance datenschutz] Ich habe die Datenschutzerklärung gelesen und stimme zu. [/acceptance] – und im Reiter Zusätzliche Einstellungen „acceptance_as_validation: on" eintragen. Ohne diesen Zusatz kann das Formular auch ohne gesetztes Häkchen abgesendet werden.
Wie schütze ich Contact Form 7 vor Spam?
Effektivste Methode 2026: Cloudflare Turnstile (kostenlos, datenschutzfreundlich, nativ in CF7 integriert). Ergänzend: Honeypot-Plugin (Contact Form 7 Honeypot) und Akismet. Google reCAPTCHA funktioniert, hat aber datenschutzrechtliche Nachteile durch Datentransfer an Google-Server.
Speichert Contact Form 7 Einträge in der Datenbank?
Nein – standardmäßig nicht. CF7 versendet die Formulardaten per E-Mail und speichert sie nicht in WordPress. Wer Einträge archivieren möchte, kann das kostenlose Flamingo-Plugin von demselben Entwickler nutzen. Das erfordert dann eine entsprechende Ergänzung der Datenschutzerklärung.
Adrian Thommes – Webdesigner & SEO-Spezialist Saarland

Adrian Thommes: Fazit

Contact Form 7 ist wie ein gutes Werkzeug: simpel in der Hand, präzise im Ergebnis – wenn man weiß, was man tut. Die Installationszeit ist gemessen in Minuten. Die Zeit bis die erste Anfrage zuverlässig ankommt, DSGVO-konform und spam-gefiltert, ist dagegen eine Investition in Details. SMTP, Turnstile, Acceptance-Tag, Reply-To-Header – nichts davon ist kompliziert, aber alles davon macht den Unterschied zwischen einem Formular das funktioniert und einem das hauptsächlich Spam produziert und Anfragen verschluckt. Wer CF7 einmal sauber aufsetzt, muss danach kaum mehr dran.