Intégration WordPress

Protégez vos formulaires WordPress avec SilentShield. Compatible avec Contact Form 7, WPForms, Gravity Forms et tout formulaire personnalisé.

1. Ajouter le script

Ajoutez ce code au fichier functions.php de votre thème ou utilisez une extension comme « 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. Vérification côté serveur

Ajoutez la vérification du nonce à votre gestionnaire de formulaire. Pour les formulaires personnalisés, ajoutez ceci à votre fonction de traitement :

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

Le Widget détecte automatiquement les formulaires Contact Form 7. Aucune configuration supplémentaire n'est nécessaire — il suffit d'ajouter le script et le Widget protégera tous les formulaires CF7 de la page.

WPForms / Gravity Forms

SilentShield détecte automatiquement les formulaires de WPForms, Gravity Forms et d'autres extensions de formulaires populaires. Le Widget injecte le nonce dans tout formulaire trouvé sur la page.

Observer les agents IA

Au-delà de la protection des formulaires, WordPress peut aussi enregistrer quels crawlers IA (GPTBot, ClaudeBot, PerplexityBot, …) lisent votre site — dès aujourd'hui via un petit fichier must-use plugin ; une prochaine mise à jour du plugin l'intégrera directement.

En savoir plus : Observer les agents IA →

Exclure SilentShield des optimiseurs JavaScript

Les plugins de cache et de performance (WP Rocket, Perfmatters, LiteSpeed, Autoptimize et d'autres) peuvent retarder le JavaScript jusqu'à la première interaction du visiteur et regrouper les fichiers. Les deux cassent SilentShield : le widget ne démarre alors qu'au premier clic, les signaux comportementaux dès le chargement (mouvement de souris, rythme de frappe, temporisation) manquent, et la protection travaille avec une fraction de ce qu'il lui faut. Les analyses de formulaires ne se lancent pas du tout. Ajoutez ces motifs aux listes d'exclusion de votre optimiseur, pour « retarder le JavaScript » ET « combiner le JavaScript » :

Motifs d'exclusiontext
client.js
behavior-captcha
silentshield

Pour vérifier : ouvrez une page avec un formulaire et exécutez performance.getEntriesByType("resource").map(r=>r.name).filter(n=>n.includes("client.js")).join() dans la console du navigateur SANS cliquer d'abord. Un résultat vide signifie que SilentShield n'est pas encore chargé — il manque alors une exclusion.

Stockage de l'API Key

Ajoutez votre API Key dans wp-config.php pour plus de sécurité :

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