fbpx

Ten artykuł wyjaśnia, jak krok po kroku dodać reCAPTCHA v2 do komentarzy WordPressa, aby zablokować spam i boty. Pokazuje, jak wkleić kod PHP przez wtyczkę Code Snippets, by nie stracić zmian przy aktualizacji motywu. Znajdziesz tu gotowy kod oraz wskazówki, gdzie wkleić swoje własne klucze reCAPTCHA.

Dlaczego warto dodać reCAPTCHA do komentarzy?

Spam w komentarzach to ogromny problem. Boty codziennie dodają setki niechcianych wiadomości. Zmniejsza to jakość strony i może negatywnie wpływać na SEO. Z pomocą przychodzi Google reCAPTCHA v2. To darmowe narzędzie, które rozpoznaje, czy użytkownik jest człowiekiem.

Boty nie będą mogły publikować spamu, w rezultacie Twoja strona będzie lepiej chroniona. To bardzo skuteczna ochrona, szczególnie jeśli nie chcesz używać ciężkich wtyczek.

Gdzie wkleić kod – i dlaczego nie do functions.php?

Chociaż można wkleić kod PHP bezpośrednio do pliku functions.php, to nie jest to zalecana praktyka. Dlaczego?

Bo kiedy zaktualizujesz motyw, cały kod zniknie. To ryzykowne i niewygodne, ponieważ będziesz musiał dodawać go od nowa.

Zamiast tego polecam użycie darmowej wtyczki Code Snippets. Dzięki niej możesz dodać kod PHP w bezpieczny sposób – nawet jeśli nie masz wiedzy programistycznej.

Po instalacji wtyczki:

  • Wejdź w Wtyczki > Dodaj nową
  • Wyszukaj Code Snippets
  • Zainstaluj i aktywuj
  • Wejdź w Snippets > Dodaj nowy
  • Wklej poniższy kod, nazwij np. „reCAPTCHA do komentarzy” i zapisz

Kod dodający reCAPTCHA v2 do komentarzy:

function dodaj_recaptcha_do_stopki() {
    echo '<script src="https://www.google.com/recaptcha/api.js" async defer></script>';
}
add_action('wp_footer', 'dodaj_recaptcha_do_stopki');

function pokaz_recaptcha_w_formularzu() {
    echo '<div class="g-recaptcha" data-sitekey="TWOJ_KLUCZ_WITRYNY"></div>';
}
add_action('comment_form_after_fields', 'pokaz_recaptcha_w_formularzu');
add_action('comment_form_logged_in_after', 'pokaz_recaptcha_w_formularzu');

function sprawdz_recaptcha_przy_komentarzu($commentdata) {
    if (!is_user_logged_in()) {
        if (empty($_POST['g-recaptcha-response'])) {
            wp_die('🛑 Proszę zaznaczyć reCAPTCHA, aby wysłać komentarz.');
        }

        $recaptcha_secret = 'TWOJ_SEKRETNY_KLUCZ';
        $response = wp_remote_post("https://www.google.com/recaptcha/api/siteverify", [
            'body' => [
                'secret' => $recaptcha_secret,
                'response' => sanitize_text_field($_POST['g-recaptcha-response']),
                'remoteip' => $_SERVER['REMOTE_ADDR']
            ]
        ]);

        $response_body = wp_remote_retrieve_body($response);
        $result = json_decode($response_body, true);

        if (empty($result['success'])) {
            wp_die('❌ Weryfikacja reCAPTCHA nie powiodła się. Spróbuj ponownie.');
        }
    }

    return $commentdata;
}
add_filter('preprocess_comment', 'sprawdz_recaptcha_przy_komentarzu');
Jak użyć własnych kluczy reCAPTCHA?

Zanim zaczniesz, musisz zarejestrować swoją stronę w Google reCAPTCHA:

  1. Wejdź na https://www.google.com/recaptcha/admin
  2. Wybierz reCAPTCHA v2
  3. Dodaj swoją domenę
  4. Skopiuj klucz witryny i klucz tajny

W powyższym kodzie podmień:

  • TWOJ_KLUCZ_WITRYNY → na swój klucz witryny
  • TWOJ_SEKRETNY_KLUCZ → na swój sekretny klucz

Upewnij się, że nie zostawiasz cudzysłowów pustych.

Jak sprawdzić, czy działa?

  1. Wyloguj się z WordPressa
  2. Wejdź na dowolny wpis z komentarzami
  3. Sprawdź, czy pojawiło się pole reCAPTCHA
  4. Spróbuj dodać komentarz bez zaznaczenia – powinno pojawić się ostrzeżenie
  5. Zaznacz reCAPTCHA i dodaj komentarz ponownie – powinno działać

Podsumowanie

Dodanie reCAPTCHA do komentarzy to prosty sposób, by ochronić stronę przed spamem. Dzięki wykorzystaniu Code Snippets nie musisz martwić się o aktualizacje motywu. Kod działa lekko, bez dodatkowych wtyczek do komentarzy. A Twoja strona będzie czystsza, bez śmieciowych komentarzy od botów.

Zdjęcie profilowe autora

Bartosz Świnicki

Jeśli podobają Ci się moje treści i chcesz docenić moją pracę, możesz mnie symbolicznie wesprzeć.

Imię:


Nazwisko:


Adres email:


Nazwa Twojej firmy:


NIP Twojej firmy

REGON Twojej firmy



Adres Twojej firmy

Ulica

Kod pocztowy

Miasto

Wybierz bramkę płatniczą na Twojej stronie