WordPress integracija
Apsaugokite savo WordPress formas su SilentShield. Veikia su Contact Form 7, WPForms, Gravity Forms ir bet kokiomis pasirinktinėmis formomis.
1. Pridėkite skriptą
Pridėkite šį kodą prie savo temos functions.php arba naudokite įskiepį, pavyzdžiui, „Insert Headers and Footers":
// functions.php
function silentshield_enqueue() {
wp_enqueue_script(
'silentshield',
'https://api.silentshield.io/client.js?key=YOUR_API_KEY',
array(),
null,
true
);
wp_add_inline_script('silentshield', "
document.addEventListener('DOMContentLoaded', function() {
SilentShield.init({ apiKey: 'YOUR_API_KEY' });
});
");
}
add_action('wp_enqueue_scripts', 'silentshield_enqueue');2. Serverio pusės patikra
Pridėkite nonce patikrą prie savo formos apdorojimo. Pasirinktinėms formoms pridėkite tai prie savo apdorojimo funkcijos:
function verify_silentshield_nonce() {
$nonce = sanitize_text_field($_POST['ss_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
Valdiklis automatiškai aptinka Contact Form 7 formas. Papildoma konfigūracija nereikalinga — tiesiog pridėkite skriptą ir valdiklis apsaugos visas CF7 formas puslapyje.
WPForms / Gravity Forms
SilentShield automatiškai aptinka formas iš WPForms, Gravity Forms ir kitų populiarių formų įskiepių. Valdiklis įterpia nonce į bet kurią formą, kurią randa puslapyje.
API rakto saugojimas
Pridėkite savo API raktą prie wp-config.php dėl saugumo:
// wp-config.php
define('SILENTSHIELD_API_KEY', 'your-api-key-here');