Jak zabezpieczyć formularz kontaktowy — w skrócie
Znajdź poniżej swoją platformę i wykonaj kroki. W większości kreatorów stron to ustawienie, za które już płacisz, a zajmuje około dwóch minut. Prawdziwej pracy wymagają tylko formularze pisane ręcznie — i w tej sekcji jasno napisane jest, który krok najczęściej się pomija.
Najpierw: sprawdź, co faktycznie masz
Nie pomijaj tego kroku. Niewidoczna ochrona wygląda na własnej stronie dokładnie tak samo jak jej brak, więc zgadywanie kosztuje czas w obie strony — albo dokładasz drugie zabezpieczenie, którego nie potrzebowałeś, albo zakładasz, że jesteś chroniony, choć nie jesteś.
Przepuść swój adres przez darmowy test, a potem przejdź do swojej platformy poniżej.
Squarespace — około dwóch minut, w cenie
Dostępne w każdym planie Squarespace. Bez kodu, bez dodatku, bez osobnego konta.
- 01
Wejdź w edycję strony i kliknij blok formularza.
- 02
Otwórz ustawienia bloku, a następnie zakładkę „Advanced”.
- 03
Włącz przełącznik reCAPTCHA / ochrony przed spamem.
- 04
Zapisz i opublikuj, a potem wyślij sobie wiadomość testową.
Wix — około dwóch minut, w cenie
Formularze Wix mają pole CAPTCHA w standardzie — nie potrzebujesz do tego aplikacji ani wyższego planu.
- 01
Otwórz stronę w edytorze Wix i zaznacz formularz.
- 02
Otwórz ustawienia formularza.
- 03
Dodaj do formularza pole CAPTCHA.
- 04
Opublikuj i wyślij sobie testowe zapytanie.
Webflow — około pięciu minut, potrzebne darmowe klucze
Komponent jest wbudowany w Webflow; darmowe klucze reCAPTCHA generujesz w konsoli Google. Za pierwszym razem doliczy kilka minut na ich utworzenie.
- 01
Zaznacz formularz w Designerze.
- 02
Otwórz ustawienia formularza w panelu po prawej.
- 03
Dodaj element reCAPTCHA i wklej site key oraz secret z Google.
- 04
Opublikuj i wyślij testowe zgłoszenie.
WordPress — około dziesięciu minut, zależnie od wtyczki
WordPress to platforma, na której naprawdę bywa różnie, bo formularz mógł powstać na kilka sposobów. Krok 4 waży tu więcej niż gdzie indziej: wtyczki antyspamowe potrafią być zbyt surowe, a formularz, który po cichu zjada prawdziwe zapytania, jest gorszy niż sam spam.
- 01
Ustal, która wtyczka zbudowała formularz — najczęściej to Contact Form 7, WPForms, Gravity Forms lub Elementor Forms.
- 02
W Wtyczki → Dodaj nową zainstaluj pasujące rozwiązanie antyspamowe: Akismet sprawdza się szeroko, a dla Contact Form 7 są darmowe wtyczki Turnstile.
- 03
Aktywuj ją i dokończ konfigurację — poprosi o darmowy klucz API.
- 04
Wyślij sobie wiadomość testową i potwierdź, że nadal dochodzi.
Shopify i HubSpot — zwykle już włączone
Shopify automatycznie stosuje CAPTCHA w formularzach kontaktowych; sprawdź w Ustawienia → Realizacja zakupu opcję Google reCAPTCHA. Jeśli korzystasz z zewnętrznej aplikacji formularzy, włącz ochronę w tej aplikacji.
HubSpot ma ochronę przed botami wbudowaną w edytor formularza w sekcji „Opcje”, we wszystkich planach łącznie z darmowym. Włącz ją i opublikuj formularz ponownie.
W obu przypadkach chodzi o potwierdzenie, a nie o dokładanie. Drugie zabezpieczenie na wierzchu nie daje nic poza utrudnieniem dla prawdziwych odwiedzających.
Formularze pisane ręcznie w HTML — ten przypadek wymaga uwagi
Krok 4 to ten, który najczęściej się pomija — a bez niego całość jest niemal wyłącznie ozdobą. Widget na stronie, którego tokenu nikt nie sprawdza po stronie serwera, zatrzyma prosty skrypt i nic więcej: cokolwiek wysyła dane wprost do endpointu formularza, przechodzi obok niego.
Trzymaj secret poza kodem strony. Jego miejsce jest w konfiguracji serwera lub zmiennych środowiskowych, nigdy w HTML.
- 01
Załóż darmowe konto Cloudflare. Aby korzystać z Turnstile, nie musisz przenosić domeny ani zmieniać DNS.
- 02
W Turnstile dodaj widget dla swojej domeny. Otrzymasz sitekey (publiczny) i secret (prywatny).
- 03
Wklej fragment kodu widgetu w HTML formularza, w miejscu, gdzie ma się pojawić.
- 04
W kodzie obsługującym formularz wyślij zwrócony token do endpointu siteverify Cloudflare i odrzuć zgłoszenie, jeśli weryfikacja się nie powiedzie.
Dwa dodatkowe zabezpieczenia warte poznania
Żadnego z nich nie warto budować samodzielnie, jeśli Twoja platforma ma już porządne zabezpieczenie. Liczą się głównie przy własnych formularzach — jako warstwa pod Turnstile, a nie zamiast niego.
- Pole honeypot. Ukryte pole, którego człowiek nigdy nie widzi i nie wypełnia. Jeśli przychodzi uzupełnione, zgłoszenie pochodzi od skryptu. Darmowe, niewidoczne i przydatne jako druga warstwa — ale nie zastąpi prawdziwego zabezpieczenia.
- Czas wypełnienia. Formularza wypełnionego w niecałą sekundę nie napisał człowiek. Przydatne jako sygnał do oznaczenia, ale nie jako samodzielna blokada — część osób wkleja przygotowany tekst i zupełnie legalnie wysyła bardzo szybko.
Po włączeniu ochrony
Zawsze wyślij sobie prawdziwą wiadomość testową i sprawdź, czy dociera tam, gdzie powinna. Kosztowna awaria to nie spam, który się przedostał, tylko ochrona po cichu blokująca prawdziwe zapytania, podczas gdy Ty zakładasz, że wszystko działa.
Potem cierpliwość. Dotychczasowy spam wygasa przez tygodnie, a nie tego samego dnia, bo Twój adres jest już na listach, które przez jakiś czas będą ponawiane.
Najczęstsze pytania
Co jest lepsze: reCAPTCHA czy Cloudflare Turnstile?
Przy własnym formularzu zwykle lepszy jest Turnstile: darmowy, przyjazny prywatności i niewidoczny dla większości odwiedzających. Przy platformie hostowanej użyj tego, co jest wbudowane — natywne rozwiązanie znacznie rzadziej się psuje, a ta niezawodność waży więcej niż różnica między nimi.
Czy moja strona musi być na Cloudflare?
Nie. Turnstile działa na każdej stronie niezależnie od hostingu i nie musisz przenosić domeny ani DNS do Cloudflare. Darmowe konto potrzebne jest wyłącznie po to, by wygenerować klucze.
Skąd będę wiedzieć, że zadziałało?
Najpierw wyślij sobie wiadomość testową i sprawdź, czy dociera — to najważniejsza kontrola. Potem uruchom darmowy test formularza ponownie: jeśli na stronie jest już rozpoznawane zabezpieczenie, test to zgłosi. Sama ilość spamu spadnie dopiero w ciągu kilku tygodni.
Mój formularz pochodzi z wtyczki, której nie instalowałem. Co teraz?
Poszukaj w HTML formularza śladów jego pochodzenia albo sprawdź listę aktywnych wtyczek pod kątem nazwy ze słowem „form”. Jeśli nie da się tego ustalić, to dobry temat na rozmowę zamiast na zgadywanie — błędną zmianę w działającym formularzu łatwo wprowadzić i łatwo przeoczyć.
Czy to powstrzyma kogoś, kto ręcznie wyśle obraźliwą wiadomość?
Nie. Zabezpieczenia przed botami filtrują automaty, nie ludzi. Ktoś, kto chce wpisać w Twój formularz coś nieprzyjemnego, nadal to zrobi — to kwestia moderacji, a nie techniki.
Wolisz, żeby ktoś to zrobił?
Trzydzieści minut, Twoja strona, konkretna odpowiedź
Przygotuj stronę i dane logowania. Włączymy właściwą ochronę dla Twojej platformy, wyślemy testowe zapytanie na dowód, że prawdziwe wiadomości nadal docierają, a ja zwrócę uwagę na wszystko inne, co warto wiedzieć o stronie. Jeśli to przełącznik na dwie minuty, powiem Ci wprost.
Umów bezpłatne 30 minut