AI要約
ウェブサイトで自動テストを実行していますか? reCAPTCHAが有効になっている場合、自動テストはCAPTCHAチャレンジを解決できないため失敗します。
このガイドでは、自動テストセッション中にreCAPTCHAを一時的に無効にする方法を説明します。
reCAPTCHAを無効にする
このコードスニペットをサイトに追加する必要があります。サイトへのスニペットの追加にヘルプが必要な場合は、このチュートリアルを参照してください。
このコード:
- 8行目: フォームでのreCAPTCHAの読み込みを防ぎます
- 11行目: フォーム送信の処理時にCAPTCHA検証をバイパスします
ログインユーザー向けの選択的無効化
ログインユーザーのみにreCAPTCHAを無効にしたい場合(公開送信の保護を維持しながらテストに便利)、この代替コードを使用してください:
/**
* 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 );
Cloudflare Turnstileを無効にする
このコードスニペットをサイトに追加する必要があります。サイトへのスニペットの追加にヘルプが必要な場合は、このチュートリアルを参照してください。
このコードは、フォームデータの設定でCAPTCHAをオフにし、Cloudflare Turnstileがフォームで初期化されないようにします。
これで完了です! 次に、reCAPTCHAのテーマも変更しますか? Google Checkbox v2 reCAPTCHAのCAPTCHAテーマを変更するの記事をご覧ください。