Integrare WordPress

Protejează-ți formularele WordPress cu SilentShield. Funcționează cu Contact Form 7, WPForms, Gravity Forms și orice formulare personalizate.

1. Adaugă scriptul

Adaugă acest cod în fișierul functions.php al temei tale sau folosește un plugin precum „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. Verificare pe server

Adaugă verificarea nonce-ului la handler-ul formularului tău. Pentru formulare personalizate, adaugă acest lucru în funcția de procesare:

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['verdict'] ?? '') === 'bot') {
        wp_die('Bot detected', 'Forbidden', array('response' => 403));
    }
}

Contact Form 7

Widgetul detectează automat formularele Contact Form 7. Nu este necesară nicio configurare suplimentară — adaugă doar scriptul și widgetul va proteja toate formularele CF7 de pe pagină.

WPForms / Gravity Forms

SilentShield detectează automat formularele din WPForms, Gravity Forms și alte pluginuri populare de formulare. Widgetul injectează nonce-ul în orice formular pe care îl găsește pe pagină.

Observarea agenților AI

Dincolo de protecția formularelor, WordPress poate înregistra și ce crawlere AI (GPTBot, ClaudeBot, PerplexityBot, …) îți citesc site-ul — astăzi printr-un mic fișier must-use plugin; o viitoare actualizare a pluginului îl va integra.

Află mai multe: Observarea agenților AI →

Exclude SilentShield din optimizatoarele JavaScript

Pluginurile de cache și viteză (WP Rocket, Perfmatters, LiteSpeed, Autoptimize și altele) pot amâna JavaScript până la prima interacțiune a vizitatorului și pot combina fișierele într-un singur pachet. Ambele strică SilentShield: widgetul pornește abia la un clic, lipsesc semnalele de comportament de la încărcarea paginii (mișcarea mouse-ului, ritmul de tastare, temporizarea), iar protecția lucrează cu o fracțiune din ce îi trebuie. Scanările de formulare nu rulează deloc. Adaugă aceste tipare în listele de excludere ale optimizatorului — atât pentru „amână JavaScript”, cât și pentru „combină JavaScript”:

Tipare de excluderetext
client.js
behavior-captcha
silentshield

Pentru verificare: deschide o pagină cu formular și rulează performance.getEntriesByType("resource").map(r=>r.name).filter(n=>n.includes("client.js")).join() în consola browserului FĂRĂ să dai clic înainte. Un rezultat gol înseamnă că SilentShield nu s-a încărcat încă — lipsește o excludere.

Stocarea cheii API

Adaugă cheia ta API în wp-config.php pentru securitate:

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