Akcia pre nových zákazníkov−20 %Zľava 20 % na prvé 3 mesiace pri mesačnej platbeZobraziť tarify
SilentShield

Chráňte formuláre vo WordPresse pomocou SilentShield

Oficiálny plugin „SilentShield – Captcha & Anti-Spam“ vloží skript a overí každé odoslanie na vašom serveri — bez vlastného kódu. Tento návod uvádza len to, čo sme s pluginom sami overili.

Zobraziť plugin v adresári WordPressu

Požiadavky

  • WordPress 5.2 alebo novší a PHP 7.4 alebo novšie (podľa údajov pluginu v adresári WordPressu).
  • Vaša webová stránka beží cez https. Bez zabezpečeného kontextu prehliadač neposkytuje funkcie Web Crypto, nevznikne žiadny nonce a chránené formuláre nemožno odoslať.
  • Účet SilentShield s kľúčom pre vašu doménu. Subdomény ako www. alebo staging. sú zahrnuté.

Ktoré formuláre možno chrániť

Overené dňa 7. 10. 2026 s pluginom 2.15.14 a WordPressom 7.1.2: človek prejde a je potvrdený na serveri, odoslanie bez prehliadača je odmietnuté.

FormulárOverená verziaStav
Contact Form 76.2Funguje
Fluent Forms6.2.15Funguje
Komentáre WordPressu7.1.2Funguje
Prihlásenie do WordPressu7.1.2Funguje
Registrácia vo WordPresse7.1.2Funguje
Pokladňa WooCommerce (klasická)11.1.2Funguje
WPForms2.0.2.2Funguje
Pokladňa WooCommerce (bloková pokladňa)11.1.2Funguje
Elementor Forms4.3.4 (Pro 4.2.1)Funguje
Avada Forms7.11.7Funguje

Inštalácia

  1. Vo WordPresse otvorte „Plugins → Add New“ a vyhľadajte „SilentShield“.
  2. Nainštalujte a aktivujte „SilentShield – Captcha & Anti-Spam for WordPress“.
  3. V menu sa zobrazí položka „SilentShield“.

Zadajte kľúč a zapnite formuláre

  1. V dashboarde SilentShield vytvorte kľúč pre vašu doménu a skopírujte ho.
  2. Vo WordPresse otvorte „SilentShield → API / SilentShield“, vložte kľúč do poľa „API Key“ a kliknite na „Validate“.
  3. Zapnite „Activate API“ a kliknite na „Save“.
  4. Otvorte „SilentShield → Forms“ a zapnite ochranu pre každý plugin formulárov, ktorý je v tabuľke vyššie uvedený ako „Funguje“.

Plugin používa kľúč webu v prehliadači aj na overenie na vašom serveri. Serverový kľúč na to nie je potrebný.

Serverový kľúč pre doplnok f12-security

Doplnok f12-security môže voliteľne vymieňať s SilentShield informácie o botoch: hlási odtlačky známych botov a sťahuje podpísaný zoznam pre Váš účet. Tieto volania uskutočňuje Váš server, nie prehliadač Vašich návštevníkov. Doplnok na to potrebuje serverový kľúč Vašej domény, nie bežný kľúč webu, ktorý sa nachádza v zdrojovom kóde Vašich stránok.

  1. V paneli SilentShield otvorte „Kľúče API“ a kľúč Vašej domény.
  2. Prejdite na stránku „Zabezpečenie“ a v sekcii „Serverový kľúč“ kliknite na „Vytvoriť serverový kľúč“.
  3. Hodnotu ihneď skopírujte. Zobrazí sa iba raz a kópiu neuchovávame.
  4. Zadajte ju v doplnku f12-security do poľa označeného ako serverový kľúč a uložte.

Serverový kľúč patrí len do nastavení Vášho servera, nikdy do stránky ani skriptu poskytovaného návštevníkom. Ak ste ho stratili, vytvorte v paneli nový; pôvodný tým prestane platiť.

Overte funkčnosť

Skutočné odoslanie

Otvorte stránku s formulárom v súkromnom okne, vyplňte ho ručne a odošlite. Uvidíte bežné potvrdenie vášho formulára a v dashboarde SilentShield sa odoslanie zobrazí s výsledkom hodnotenia.

Odmietnuté odoslanie

Odošlite to isté bez prehliadača, napríklad komentár cez curl k príspevku s otvorenými komentármi. Nahraďte adresu a ID príspevku:

Terminalbash
curl -i -X POST https://example.com/wp-comments-post.php \
  -d "comment_post_ID=1&author=Test&[email protected]&comment=Test"

Očakávajte odmietnutie so správou pluginu, na anglickojazyčnej stránke „Captcha not correct: Behavior check“. Pri Contact Form 7 formulár zobrazí „Behavior check“.

Riešenie problémov

Po kliknutí na „Odoslať“ sa nič nestane.
Beží stránka cez http namiesto https? Konzola prehliadača potom zobrazí varovanie „[SilentShield] Web Crypto fehlt im Worker …“ (správa je v nemčine). Poskytujte stránku cez https.
Contact Form 7 hlási „There was an error trying to send your message“.
Overenie prešlo; zlyhalo odoslanie e-mailu z WordPressu. Skontrolujte nastavenia pošty (napríklad SMTP), nie ochranu proti botom.
Skutoční návštevníci dostávajú „Behavior check“.
Najčastejšou príčinou je optimalizačný plugin, ktorý odkladá alebo zlučuje JavaScript — pozrite poznámku nižšie. Skontrolujte tiež, či kľúč patrí k doméne stránky.
Formulár WPForms sa neodošle alebo bloková pokladňa odmieta každú objednávku.
Aktualizujte plugin SilentShield na verziu 2.15.14 alebo novšiu. Oba problémy sme namerali pri verzii 2.15.12; pri verzii 2.15.14 sa už nevyskytujú.
Chcete vidieť, čo skript robí.
Pripojte ?silentshield-debug k adrese stránky. Konzola prehliadača potom zobrazí každý krok overenia.

Vyňatie SilentShield z optimalizátorov JavaScriptu

Cachovacie a zrýchľovacie pluginy (WP Rocket, Perfmatters, LiteSpeed, Autoptimize a ďalšie) vedia odkladať JavaScript až na prvú interakciu návštevníka a zlučovať súbory do jedného balíka. Oboje rozbíja SilentShield: widget sa spustí až po kliknutí, chýbajú signály správania od načítania stránky (pohyb myši, rytmus písania, časovanie) a ochrana pracuje so zlomkom toho, čo potrebuje. Skenovanie formulárov nebeží vôbec. Pridajte tieto vzory do zoznamov výnimiek svojho optimalizátora — pre „odložiť JavaScript“ aj „zlúčiť JavaScript“:

Vzory výnimiektext
client.js
behavior-captcha
silentshield

Overenie: otvorte stránku s formulárom a spustite performance.getEntriesByType("resource").map(r=>r.name).filter(n=>n.includes("client.js")).join() v konzole prehliadača BEZ predchádzajúceho kliknutia. Prázdny výsledok znamená, že SilentShield sa ešte nenačítal — chýba výnimka.

Obmedzenia

  • Chránené sú len pluginy formulárov, ktoré zapnete v „SilentShield → Forms“.
  • Uvádzame iba overené verzie. Plugin rozpozná aj ďalšie pluginy formulárov; či fungujú so SilentShield, sme neoverovali.
  • Plugin má vlastné kontroly (napríklad honeypot a meranie času) a zobrazuje pre ne vlastné správy, napríklad „JavaScript check“.
  • SilentShield chráni formuláre pred botmi. Nenahrádza firewall webových aplikácií ani ochranu proti DDoS.

Prevádzka

  • Plugin aktualizujete cez WordPress ako každý iný. Skript v prehliadači prichádza vždy od nás v aktuálnej verzii.
  • Každé odoslanie sa do kvóty počíta dvakrát: raz za hlásenie z prehliadača, raz za overenie na vašom serveri.
  • Ak SilentShield návštevníkovi navyše zadá úlohu, pribudnú za ňu až 2 ďalšie požiadavky. Odoslanie, ktoré server navyše overuje, tak stojí až 2 požiadavky – s úlohou až 4.
  • Výsledky hodnotenia a odmietnuté odoslania vidíte v dashboarde SilentShield.

Zobraziť ceny a kvóty

Bez pluginu: vlastná integrácia

Pre vlastné formuláre alebo bez pluginu vložte skript sami a overujte každé odoslanie na vašom serveri. Bez tohto overenia skript nechráni: priamo odoslanú požiadavku nezastaví.

1. Pridajte skript

Pridajte tento kód do súboru functions.php vašej témy alebo použite plugin ako „Insert Headers and Footers":

functions.phpphp
// functions.php
function silentshield_enqueue() {
    wp_enqueue_script(
        'silentshield',
        'https://api.silentshield.io/client.js?k=YOUR_API_KEY',
        array(),
        null,
        true
    );
}
add_action('wp_enqueue_scripts', 'silentshield_enqueue');

2. Overenie na strane servera

Pridajte overenie nonce do handlera vášho formulára. Pre vlastné formuláre pridajte toto do vašej spracovateľskej funkcie:

PHPphp
function verify_silentshield_nonce() {
    $nonce = sanitize_text_field($_POST['behavior_nonce'] ?? '');
    if (empty($nonce)) {
        wp_die('Missing verification', 'Error', array('response' => 422));
    }

    $response = wp_remote_post('https://api.silentshield.io/api/v1/captcha/verify-nonce', array(
        'headers' => array(
            'Content-Type' => 'application/json',
            'X-Api-Key' => SILENTSHIELD_API_KEY,
        ),
        'body' => wp_json_encode(array('nonce' => $nonce)),
        'timeout' => 5,
    ));

    if (is_wp_error($response)) {
        return; // fail open
    }

    $body = json_decode(wp_remote_retrieve_body($response), true);
    if (($body['ok'] ?? false) !== true || ($body['verdict'] ?? '') !== 'human') {
        wp_die('Bot detected', 'Forbidden', array('response' => 403));
    }
}

Uloženie API kľúča

Pridajte svoj API kľúč do wp-config.php pre bezpečnosť:

wp-config.phpphp
// wp-config.php
define('SILENTSHIELD_API_KEY', 'your-api-key-here');

Sledovanie AI agentov

Okrem ochrany formulárov môže WordPress zaznamenávať aj to, ktoré AI crawlery (GPTBot, ClaudeBot, PerplexityBot, …) čítajú váš web — dnes pomocou malého súboru must-use pluginu; nadchádzajúca aktualizácia pluginu to prinesie vstavané.

Viac informácií: Sledovanie AI agentov →