お問い合わせのスパムをreCAPTCHAでブロック!

技術ログ

【この記事でわかること】

  • お問い合わせフォームに来るスパムの実態
  • Contact Form 7にreCAPTCHA v3を導入する手順
  • reCAPTCHA導入後のスパム削減効果

1. ある日突然、お問い合わせフォームがスパムだらけに

WordPress でブログを立ち上げ、
お問い合わせフォームを設置して数日経ちました。

最初は自分でテスト送信したメッセージしか来ていなかったのですが、
ある日を境に英語の意味不明なメッセージが大量に届くようになりました。

内容は、

  • 文脈がない英文
  • URL だけ貼られている
  • 明らかに人が書いていない文章

いわゆる「スパム投稿」です。

2. スパム対策として reCAPTCHA を選んだ理由

WordPress のスパム対策はいくつかありますが、
今回は以下の理由から reCAPTCHA を選びました。

  • ユーザーに余計な操作をさせたくない
  • 見た目を変えずに対策したい
  • 定番で情報が多い

結果的に reCAPTCHA v3 を選択しました。

3. reCAPTCHA v3の仕組みとは?

reCAPTCHA v3 は、
よく見る「私はロボットではありません」のチェックを出さずに、
裏側でアクセスの怪しさを判定してくれる仕組みです。

人間は何も気づかず、
bot(怪しいアクセス)だけを弾いてくれます。

4. Contact Form 7にreCAPTCHA v3を導入する手順

前提環境

本記事の内容は、以下の環境を前提にしています。

  • WordPress:6.x 系
  • お問い合わせフォーム:Contact Form 7(2026年1月5日時点 最新版)
  • スパム対策:Google reCAPTCHA v3

手順1:Google reCAPTCHA にサイト登録する

まずは Google reCAPTCHA にアクセスします。
https://www.google.com/recaptcha/admin/create

Google reCAPTCHAのサイト登録画面
  • ラベル:任意の値でOK(ブログタイトルがわかりやすい)
  • reCAPTCHA タイプ:v3 を選択
  • ドメイン:ブログドメインを入力(wwwは不要)
  • Google Cloud Platform のプロジェクト名:ブログ専用のわかりやすい名称(ドメイン + reCAPTCHA など)

reCAPTCHA タイプドメイン以外はブログ用であることがわかれば、
どんな名称でも問題ありません。

「送信」をクリックするとキーが発行されます。

発行されたサイトキーとシークレットキー

発行されたサイトキーシークレットキーを WordPress に設定します。

手順2:WordPress(Contact Form 7)にキーを設定する

Contact Form 7
「お問い合わせ → インテグレーション」から
reCAPTCHA を探し、
「インテグレーションのセットアップ」をクリックします。

Contact Form 7のインテグレーション設定画面

※ reCAPTCHA v3 の場合、フォーム側の編集は不要です。この設定だけで有効になります。

5. reCAPTCHA v3導入後のスパム対策効果

導入後からは、

  • 意味不明な英文スパムが来なくなった
  • 正常なお問い合わせは問題なく届く

Flamingo に保存される件数も明らかに減りました。
明確な数値は取っていませんが、
体感としてはかなり効果を感じています。

まとめ:お問い合わせフォーム設置時はスパム対策を忘れずに!

  • お問い合わせフォームは公開=スパムの対象になる
  • reCAPTCHA v3 は導入が簡単
  • 見た目を変えずにスパム対策できる

同じように困っている方の参考になれば幸いです。


なお、設定途中で Cloudflare Turnstile を推奨するメッセージが表示されるかと思います。
Turnstile は完全無料で魅力的な選択肢ですが、
今回はまず実績と情報量の多い reCAPTCHA を採用しました。
将来的には Turnstile への移行も検討しています。

ブログのアクセス数が増え、
reCAPTCHA の無料枠で足りなくなった際には
Cloudflare Turnstile への移行を進めたいと思います。


それでは良い WordPress ライフを!

コメント

タイトルとURLをコピーしました