Contact Form 7にreCAPTCHAを導入する方法!v2とv3の違いについても解説

contact form 7 recaptchaのサムネイル

本ページはプロモーションが含まれています

お問い合わせフォームを設置してから多くはないのですが、2,3日に一度スパムメールが届くようになりました。海外から送られているもので、明らかに総当たり的にランダムに送ってきているのが分かります。

それほどの数ではないのですが、定期的に送られてくると面倒になってきたのでお問い合わせフォームの実装に使用しているContact Form 7にreCAPTCHAを設定して対策してみました。今回はその設定方法を紹介します。

目次

reCAPTCHAとは

reCAPTCHAとは、Webサイトに設置しているフォームに対するスパム攻撃からWebサイトを守る機能です。特にランダムに総当たり攻撃をかけるbot対策に効果的です。

フォームを送信する際にチェックボックスを入力させたり、画像認証による認証、送信ボタンのクリック時に、怪しいbotかどうかの判断をシステムが判断しています。

Googleが提供しているシステムなのですが、現在(2019/12)v2とv3の2つバージョンが提供されています。

v3とv2の違い

v2は従来から使用されていたチェックボックスや画像選択による認証を要求するシステムです。「私はロボットではありません」というチェックボックスをみたことがある方も多いのではないでしょうか。

reCAPTCHA v2のチェックボックス
https://developers.google.com/recaptcha

v3は2018年10月に正式にリリースされた新しいreCAPTCHAのバージョンです。これまでのような手動の認証は必要とせず、送信ボタンのクリック時に怪しいbotかどうか判断しています。こちらの方が面倒な手間が掛からず便利ですね。

reCAPTCHAの導入方法

reCAPTCHAの機能はGoogleが提供しています、まずはreCAPTCHAのサービスページを開きます。Googleアカウントにログインしていない方はお持ちのアカウントでログインします。

reCAPTCHAの登録ページ

Google reCAPTCHAにWebサイトを登録する

Google reCAPTCHAにWebサイトを登録するページが表示されます。必要項目を入力して送信ボタンをクリックしてください。

その際、使用しているContact Form 7プラグインのバージョンが5.1以上の方は「reCAPTCHAのタイプ」を”reCAPTCHA v3”に入力してください。

reCAPTCHAの設定画面

reCAPTCHAのサイトキーとシークレットキーの取得

Webサイトの登録が完了すると「サイトキー」と「シークレットキー」が表示されます。このキーはContact Form 7のプラグイン設定で使用します。

reCAPTCHAのサイトキーとシークレットキー

Contact Form 7にreCAPTCHAを設定する

WordPressの管理画面からContact Form 7の「インテグレーション」をクリックしてください。

contactform7のインテグレーションセットアップボタン

「reCAPTCHA」欄の「インテグレーションのセットアップ」をクリックします。

contactform7のreCAPTCHAサイトキーとシークレットキーの入力画面

さきほどのサイトキーとシークレットキーを入力して「変更を保存」をクリックして設定は完了です。

contactform7のreCAPTCHA設定完了画面

実際にアクセスして確認してみてください。

お問い合わせフォームのreCAPTCHAマーク

Contact Form 7にreCAPTCHA v2が表示されない原因

これまで、Contact Form 7でreCAPTCHA v2が表示されていたはずなのに、突然reCAPTCHAが表示されなくなった事例があるようです。

おそらく原因はContact Form 7のバージョンアップによるものだと思います。先述したように、Contact Form 7のバージョン5.1移行reCAPTCHA v3を使用するようになりました。その場合reCAPTCHA v3のサイトキーとシークレットキーを新しく取得する必要があります。

v2で取得した設定を編集することはできませんので、同じGoogleアカウントで構いませんので、新しくv3のサイトキーとシークレットキーを取得してください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

志賀裕一のアバター 志賀裕一 サーバーチョイス 編集者

Web開発歴6年のフリーランスエンジニア。大学在学中から教育系Webメディアを運営するスタートアップにて、Webディレクターとして従事。独立からこれまでに多くのコーポレートサイトやCRM、予約システムなどのシステム開発、オウンドメディア運営を経験。20以上のレンタルサーバーの使用経験を持つ。

目次