← Înapoi la Blog
WordPressContact Form 7SpamProtecție boți

Cum reduceți țintit spamul în Contact Form 7

Marc Wagner·5 octombrie 2026·6 min de citit

Ce problemă aveți?

Trei cazuri arată asemănător, dar au cauze diferite:

  • Primiți spam. Căsuța de e-mail se umple cu reclame, linkuri sau text fără sens. Formularul lasă boții să treacă.
  • Formularul afișează o eroare. Vizitatorii văd „There was an error trying to send your message. Please try again later.” (tradus pe site-urile în alte limbi). Poate fi protecția antispam sau o problemă la trimiterea e-mailurilor.
  • Lipsesc solicitări reale. Nimeni nu se plânge, dar nici nu sosește nimic. Atunci protecția respinge poate oameni sau e-mailurile nu ajung în căsuța dumneavoastră.

Identificați mai întâi cazul, înainte de a adăuga protecție. Cum se face acest lucru este descris în secțiunea „Trimiterea e-mailurilor sau protecția împotriva boților?”.

Ce aduce Contact Form 7 de la sine

Contact Form 7 are integrate mai multe măsuri împotriva spamului (verificat pe versiunea 6.1.7):

  • Lista de cuvinte interzise. CF7 verifică fiecare trimitere cu lista din „Setări → Discuție” („Disallowed Comment Keys”). O potrivire contează ca spam. Ajută împotriva cuvintelor și domeniilor recurente, nu împotriva textelor noi.
  • Câmpul de test (quiz). Cu eticheta [quiz], formularul pune o întrebare pe care o stabiliți dumneavoastră. Boții care completează orice formular eșuează; boții care vizează în mod specific site-ul dumneavoastră, nu.
  • Akismet. Cu pluginul Akismet și o cheie Akismet, CF7 verifică numele, adresa de e-mail și textul prin serviciul Akismet.
  • reCAPTCHA v3. CF7 încarcă scriptul de la Google și respinge trimiterile sub un prag de scor.
  • Cloudflare Turnstile. CF7 integrează Turnstile; scriptul provine de la Cloudflare.

Lista de cuvinte interzise și testul funcționează fără un serviciu extern. Akismet, reCAPTCHA și Turnstile trimit datele vizitatorilor dumneavoastră furnizorului respectiv, iar acest lucru trebuie menționat în politica de confidențialitate.

Când are sens o protecție suplimentară împotriva boților

O protecție dedicată împotriva boților merită dacă

  • spamul continuă să sosească în ciuda listei de cuvinte interzise și a testului,
  • nu doriți să încărcați scripturi de la Google sau Cloudflare,
  • doriți să vedeți pentru fiecare trimitere respinsă de ce a fost respinsă.

Dacă testul este suficient pentru formularul dumneavoastră, nu aveți nevoie de nimic în plus. O protecție de care nu are nimeni nevoie este doar încă o sursă de erori.

Configurarea SilentShield pentru Contact Form 7

Pluginul oficial „SilentShield – Captcha & Anti-Spam” protejează Contact Form 7 fără cod propriu. L-am testat cu Contact Form 7 6.1.7 și WordPress 7.0.

  1. Instalați și activați pluginul din directorul WordPress.
  2. La „SilentShield → API / SilentShield”, introduceți cheia, faceți clic pe „Validate”, activați „Activate API” și salvați.
  3. La „SilentShield → Forms”, activați Contact Form 7.

Site-ul trebuie să ruleze prin https, altfel formularul nu poate fi trimis. Toți pașii și pluginurile de formulare testate se află în ghidul WordPress. Fiecare trimitere se contorizează în cotă, consultați prețuri și cote.

Testarea trimiterilor reale și a încercărilor eșuate

O trimitere reală: Deschideți pagina într-o fereastră privată, completați formularul manual și trimiteți-l. Ar trebui să vedeți confirmarea CF7 cu chenar verde.

O încercare eșuată: Trimiteți același formular fără browser către interfața CF7. ID-ul formularului și valoarea pentru _wpcf7_unit_tag le găsiți în sursa paginii, în câmpurile ascunse ale formularului.

curl -X POST "https://example.com/?rest_route=/contact-form-7/v1/contact-forms/123/feedback" \
  -F "_wpcf7=123" -F "_wpcf7_unit_tag=wpcf7-f123-p45-o1" -F "_wpcf7_container_post=45" \
  -F "your-name=Test" -F "[email protected]" -F "your-message=Test"

Ar trebui să primiți un răspuns cu "status":"spam". Cu SilentShield, mesajul este „Behavior check”.

Trimiterea e-mailurilor sau protecția împotriva boților?

În Contact Form 7, „spam” și „e-mailul nu a putut fi trimis” au același text implicit. Le puteți deosebi în două locuri:

  • Culoarea chenarului mesajului: portocaliu înseamnă spam, roșu înseamnă că trimiterea e-mailului a eșuat, atâta timp cât tema nu suprascrie culorile CF7.
  • Răspunsul în browser: În instrumentele pentru dezvoltatori (fila Network), răspunsul la feedback conține status, fie spam, fie mail_failed.

Dacă este mail_failed, protecția împotriva boților a lăsat trimiterea să treacă; problema ține de trimiterea e-mailurilor de către WordPress. Verificați atunci setările de e-mail, de exemplu cu un plugin SMTP. Dacă este spam, o măsură de protecție a respins-o. Cu SilentShield, mesajul numește motivul, de exemplu „Behavior check”.

Limite

  • Nicio protecție nu oprește spamul scris de mână de o persoană.
  • Fără JavaScript în browser, o trimitere către un formular protejat este respinsă.
  • SilentShield protejează formularele împotriva boților. Nu înlocuiește un firewall pentru aplicații web sau o protecție DDoS.

Configurați protecția formularelor

Pagini conexe

Gata să renunțați la CAPTCHA?

Începeți să vă protejați formularele — invizibil. Nu este nevoie de card de credit.