
こんにちは!
あれえ?Contact Form7で適切にGoogle reCAPTCHA v3の設定の設定をしたのに右下にバッジが表示されないなあ。スパムメールも止まないしなんでなんだろう
今回は上記のようなお悩みを解決します
今回弊社のサイトで「Contact Form7を使用しているフォームにGoogle reCAPTCHA v3を設定したが右下にバッジが表示されずスパムメールも止まらない」という事象が起きましたが、そちらを解決しましたので解決方法をシェアします。
「プラグインの競合か?」
「プラグインのバージョンか?」
などと色んな事を考えましたが原因としては実に簡単なものでした(汗)
では早速見ていきましょう!
目次
Contact Form7を使用しているフォームにGoogle reCAPTCHA v3が表示されない場合の解決方法
では結論です。
<?php wp_footer(); ?>
こちらのコードをfooter.phpに追加するだけ。
以上です。w
もし同じような事象が起きている場合、該当のテーマファイルのfooter.phpを見直してみて下さい。
弊社のサイトの場合、footer.phpにこの一文が抜けていたためGoogle reCAPTCHA v3が機能しませんでした。
これにはWordPressの仕組みが大きく影響しています
WordPressでは多くのプラグインやテーマの機能が、wp_footer()
アクションフックを利用して JavaScriptや追記のHTMLコードを <body>
タグの直前に挿入する仕組みになっています。
reCAPTCHA v3も例外ではなく、Contact Form 7 や Googleのスクリプトは以下のように wp_footer
フックを使って、バッジ表示やreCAPTCHAの動作に必要なJavaScriptを出力しています。
<?php wp_footer(); ?>
これが footer.php
にないと、以下のような状態となります。
・reCAPTCHAのスクリプトが読み込まれない
・バッジも表示されない
・reCAPTCHAによるスパム判定処理も動かない
解決策のまとめ
①使用しているテーマの footer.php を開く。
②