ある日突然、お問い合わせフォームがスパムだらけに
WordPress でブログを立ち上げ、
お問い合わせフォームを設置して数日経ちました。
最初は自分でテスト送信したメッセージしか来ていなかったのですが、
ある日を境に英語の意味不明なメッセージが大量に届くようになりました。
内容は、
- 文脈がない英文
- URL だけ貼られている
- 明らかに人が書いていない文章
いわゆる「スパム投稿」です。
スパム対策として reCAPTCHA を入れることにした理由
WordPress のスパム対策はいくつかありますが、
今回は以下の理由から reCAPTCHA を選びました。
- ユーザーに余計な操作をさせたくない
- 見た目を変えずに対策したい
- 定番で情報が多い
結果的に reCAPTCHA v3 を選択しました。
reCAPTCHA v3 とは?
reCAPTCHA v3 は、
よく見る「私はロボットではありません」のチェックを出さずに、
裏側でアクセスの怪しさを判定してくれる仕組みです。
人間は何も気づかず、
bot(怪しいアクセス)だけを弾いてくれます。
導入手順
0. 前提条件
本記事の内容は、以下の環境を前提にしています。
- WordPress:6.x 系
- お問い合わせフォーム:Contact Form 7(2026年1月5日時点 最新版)
- スパム対策:Google reCAPTCHA v3
1. Google reCAPTCHA にサイト登録
まずは Google reCAPTCHA にアクセスします。
https://www.google.com/recaptcha/admin/create

- ラベル:任意の値でOK(ブログタイトルがわかりやすい)
- reCAPTCHA タイプ:v3 を選択
- ドメイン:ブログドメインを入力(wwwは不要)
- Google Cloud Platform のプロジェクト名:ブログ専用のわかりやすい名称(ドメイン + reCAPTCHA など)
reCAPTCHA タイプとドメイン以外はブログ用であることがわかれば、
どんな名称でも問題ありません。
「送信」をクリックするとキーが発行されます。

発行されたサイトキーとシークレットキーを WordPress に設定します。
2. WordPress にキーを設定
Contact Form 7 の
「お問い合わせ → インテグレーション」から
reCAPTCHA を探し、
「インテグレーションのセットアップ」をクリックします。

※ reCAPTCHA v3 の場合、フォーム側の編集は不要です。この設定だけで有効になります。
導入後どうなったか
導入後からは、
- 意味不明な英文スパムが来なくなった
- 正常なお問い合わせは問題なく届く
Flamingo に保存される件数も明らかに減りました。
明確な数値は取っていませんが、
体感としてはかなり効果を感じています。
まとめ
- お問い合わせフォームは公開=スパムの対象になる
- reCAPTCHA v3 は導入が簡単
- 見た目を変えずにスパム対策できる
同じように困っている方の参考になれば幸いです。
なお、設定途中で Cloudflare Turnstile を推奨するメッセージが表示されるかと思います。
Turnstile は完全無料で魅力的な選択肢ですが、
今回はまず実績と情報量の多い reCAPTCHA を採用しました。
将来的には Turnstile への移行も検討しています。
ブログのアクセス数が増え、
reCAPTCHA の無料枠で足りなくなった際には
Cloudflare Turnstile への移行を進めたいと思います。
それでは良い WordPress ライフを!


コメント