reCaptcha na WordPress webe

Každý dynamický web, ktorý pracuje s odosielacími formulármi ako napr. registrácia užívateľov, pridávanie komentárov, verejné fóra bez registrácie atď. je vystavovaný robotom, ktorý vedia správcom webov znepríjemniť život. Na tomto webe tiež používam formuláre napr. na komentovanie blogov. V poslednom čase sa aj tu objavuje dosť spamov, ale vzhľadom k tomu, že komentáre mám moderované, tak na web sa vôbec nedostanú. Tieto spamy však musím raz za čas ručne odstrániť. Denne sa jedná radovo o jednotky spamov.

Existuje viac spôsobov ako znížiť počet spamov, ale nie všetky sú dokonalé a sofistikovaný roboti dokážu dnes lepšie rozlíšiť nečitateľný text z vygenerovaného obrázku captcha ako človek. V dobe písania tohto článku je zrejme jedným z najúčinnejších spôsobov ako odstaviť robotov, produkt od Google pod názvom reCaptcha. Tento systém dokáže určiť, či sa jedná o skutočného človeka, alebo robota. Na internete je mnoho článkov, ktoré popisujú fungovanie reCaptcha, takže týmto sa tu nebudem zabývať a popíšem ako som reCaptcha implementoval do WordPressu. V súčasnosti je možné použiť reCaptcha v2, alebo v3. Ja budem implementovať reCaptcha v2 s checkboxom I’m not a robot, ale vyskúšam tiež Invisible reCaptcha.

Na ľavo Invisible recaptcha a na pravo I’m not a robot reCaptcha

Na ľavej strane obrázku je Invisible reCaptcha. To je ikona, ktorá sa zobrazí na webe, ale pri odosielaní formuláru nemusí užívateľ nič robiť (neskôr si ukážeme ako je možné aj túto ikonu z webu odstrániť). Na pravej strane je reCaptcha, kde musí užívateľ odkliknúť, že nie je robot.

Ešte pred inštaláciou reCaptcha pluginu na WordPress webe pôjdeme na web google a necháme si vygenerovať dvojicu kľúčov ktoré budeme neskôr potrebovať. Prejdeme na google.com-recaptcha-about a v menu klikneme na V3 Admin Console (samozrejme musíme byť prihláseny na google účte).

Nastavenie reCaptcha

Vyplníme Label. Ďalej reCaptcha type vyberieme reCaptcha v2 a možnosť "I'm not a robot" Checkbox. V časti Domains vyplnme doménu, ktorú budeme chcieť chrániť. Klinutím na + môžeme pridať viac domén. V časti Owners necháme naš email. Následne označíme checkbox, že akceptujeme zmluvne podmienky a ak chceme dostavať upozornenia pri nesprávnej konfigurácii, alebo zvýšenom trafficu na webe, tak označíme aj checkbox Send alerts to owners . Nakoniec klikneme na SUBMIT. Následne nám systém vygeneruje 2 kľúče, SITE KEY a SECRET KEY.

Site Key a Secret Key

V admin webe google reCAPTCHA v hornom menú kliknutím na + kde si môžeme vytvoriť ďalšiu položku a teraz si necháme vygenerovať kľúče pre Invisible reCaptcha badge. To je všetko čo sme potrebovali spraviť na Google reCaptcha webe. Teraz sa môžeme presunúť do administrácie nášho WordPress webu.

Pluginy -> Pridať nový plugin

Vyhľadáme plugin Advanced noCaptcha & invisible Captcha, nainštalujeme, aktivujeme a prejdeme do nastavenia pluginu. Vo vrchnej časti vyberieme reCaptcha Type možnosť buď V2 "I'm not a robot", alebo V2 Invisible. Samozrejme ku každému typu musíme použiť tie správne Site Key a Secret Key, ktoré sme si nechali predtým vygenerovať. V časti Enabled Forms označíme checkbox, kde chceme reCaptcha používať. V ďalšej časti Other Settings si môžeme nastaviť napr. čo sa má zobraziť v chybovej správe, môžeme vypnúť reCaptcha prihláseným užívateľom, môžeme použiť reCaptcha pri vypnutom JS atď. Ak máme všetko nastavené, tak klikneme na celkom spodný button Uložiť zmeny

reCaptcha I’m not a robot
reCaptcha Invisible

V závislosti od toho či sme nastavili možnosť V2 "I'm not a robot", alebo V2 Invisible sa na webe pod odosielacím formulárom, resp. nad odosielacím buttonom zobrazí ikona I’m not a robot, ktorú musíme odkliknuť. Ak na webe nevidíme odklikávacie políčko, ale len ikonu reCaptcha (viď prvý obrázok tohto blogu (ľavý)), tak je na webe použitá V2 Invisible. Táto Invisible ikona môže na webe užívateľov rušiť a je možne ju odstrániť. Ak ikonu chceme odstrániť, tak v rámci admin webu WP prejdeme na

Vzhľad -> Prispôsobiť -> Dodatočné CSS

kde pridáme selector CSS

.grecaptcha-badge {
    display: none;
}

Záver

Určite nemôžem tvrdiť, že pri použití reCaptcha nedostaneme žiadny spam, ale veľmi to webu pomôže. Rozhodol som sa, že počas niekoľko dní budem používať možnosť V2 „I’m not a robot“ a neskôr vyskúšam možnosť „V2 Invisible“. Zatiaľ to prevádzkujem 2 dni a som bez spamu, tak uvidíme čo bude o 10 dni 😀

Leave a Reply

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *