Come disabilitare reCAPTCHA per i test automatizzati

State eseguendo test automatizzati sul vostro sito web? Quando reCAPTCHA è abilitato, i test automatici falliscono perché non possono risolvere la sfida CAPTCHA.

Questa guida mostra come disabilitare temporaneamente i reCAPTCHA durante le sessioni di test automatizzati.

Disabilitare reCAPTCHA

Dovrete aggiungere questo snippet di codice al vostro sito. Se avete bisogno di aiuto per aggiungere gli snippet al vostro sito, consultate questo tutorial.

Questo codice:

  • Alla riga 8: Impedisce il caricamento di reCAPTCHA nei moduli.
  • Alla riga 11: bypassa la verifica CAPTCHA durante l'elaborazione dell'invio dei moduli.

Disabilitazione selettiva per gli utenti connessi

Se si desidera disabilitare il reCAPTCHA solo per gli utenti che hanno effettuato l'accesso (utile per i test, pur mantenendo la protezione per gli invii pubblici), utilizzare questo codice alternativo:

/**
 * Disable CAPTCHA for all logged-in users
 *
 * @link   https://wpforms.com/developers/how-to-disable-recaptcha-for-automated-testing/
 */
 
// Skip CAPTCHA for logged in users only.
add_action( 'plugins_loaded', static function() {
 
    // Check if the current visitor is a logged in user.
    if ( is_user_logged_in() ) {
 
        add_filter( 'wpforms_process_bypass_captcha', '__return_true' );
        add_filter( 'wpforms_frontend_recaptcha_disable', '__return_true' );
        remove_action( 'wpforms_frontend_output', [ wpforms()->get( 'frontend' ), 'recaptcha' ], 20 );
    }
 
}, 11 );

E questo è tutto! Poi, volete cambiare anche il tema di reCAPTCHA? Date un'occhiata al nostro articolo sulla modifica del tema di CAPTCHA su Google Checkbox v2 reCAPTCHA.