WordPressでお問い合わせフォームを設置したら、スパムメールが毎日大量に送られるようになった!とお困りではありませんか?
最近は海外からの怪しいメールだけでなく、日本語での営業メールなども増えています。
そのまま放置しておくとどんどん増えていくばかり!
また、スパムメール配信行為が悪用されると、自分のお問い合わせフォームから数百通、数千通といった単位のスパムメールが配信されてしまうこともあります。
このスパムメール配信行為を放置すると、自身のWebサイトやドメイン名の第三者信用評価(レピュテーション)が下がり
・メール受信側で迷惑メールと判定される
・メール受信側で受信数の制限がかかり、
メールが届かなくなったり、届きにくくなったりする
・Webサイトやドメイン名が危険な情報を配信していると判定される
などの問題が発生することがあります。
この記事では、WordPress(ワードプレス)の問合せフォームプラグイン Contact Form 7(コンタクトフォーム)を利用していて、スパムメールに困っている人向けに Googleのサービス「reCAPTCHA(v3)」を導入する方法をご紹介します。
はじめる前に
- ワードプレスやプラグインを最新版へアップデートし、プログラムを最新の状態にしてください。
- Googleアカウントが必要です。お持ちでない方は、新規作成してください。
reCAPTCHA(リキャプチャ)とは
reCAPTCHA(リキャプチャ)とは、スパムメールなどの不正攻撃からWebサイトを守る Google の提供する無料サービスです。
Webサイトでゆがんだ英数字や「私はロボットではありません」というチェックボックス、またはタイルで区切られた画像から車や信号機の「画像をすべて選択してください」という画面を見たことはありませんか?
これが「reCAPTCHA」バージョン2までの機能です。
Webサイトが守られるのはうれしいけれど、ユーザーの立場だと少し面倒だなと思うことがありますよね。

うん、私は正直、面倒だな~って思ってた!
これがバージョン3になると、人目につかないバックグラウンドでスパムかどうかを判断して、サイトを保護する仕組みに変更されました。
お問い合わせフォームで「送信」ボタンを押すだけで、自動的に人間かロボットかどうかの判断が行われる仕組み。ユーザーにも負担がなく、利便性がグッとあがりました。
今回は reCAPTCHA v3を導入してみましょう。
reCAPTCHA v3 を導入する
reCAPTCHAはGoogleが提供するサービスのため、Googleアカウントが必要です。
お持ちでない方は、はじめにGoogleアカウントを作成してください。
では、以下のサイトにアクセスしてキーを取得します。
https://www.google.com/recaptcha/about/
『v3 Admin Console』をクリックします。


サイト登録画面が開きますので、それぞれの項目を入力します。


- ラベル: ウェブサイトのドメインを入力
- reCAPTCHAタイプ: reCAPTCHA v3 を選択
- ドメイン: ウェブサイトのドメインを入力
- オーナー: メールアドレスを入力(もしくはそのまま)
- reCAPTCHA 利用条件に同意する: チェック
- アラートをオーナーに送信する: チェック
最後に「送信」ボタンをクリックします。
サイトキーとシークレットキーが発行されるので、それぞれコピーして保存しておきます。
Contact Form 7 で reCAPTCHAを設定する
WordPressの管理画面で、「お問い合わせ」から「インテグレーション」メニューを選択します。


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


コピーしたサイトキーとシークレットキーを入力して保存します。


サイトを開いたときに、右下に reCAPTCHA のマークが表示されていたら完了です。


reCAPTCHA のロゴを非表示にする
reCAPTCHA の実装に関しては上記で終了ですが、右下に表示されているロゴマークがほかのボタンとかぶったりして見にくいことがあります。
そういった場合には、このロゴマークをGoogle 公認の方法で非表示にすることもできます。
STEP1. reCAPTCHA のよくある質問ページにアクセス
まずは下記 reCAPTCHA よくある質問ページにアクセスします。
「I'd like to hide the reCAPTCHA badge. What is allowed?」(reCAPTCHAバッジを非表示にすることはできますか?)
右上のアイコンをクリックして、コードサンプルをコピーします。


↑ このページは開いたままにしておいてください。
STEP2. お問い合わせフォームにコードを貼り付ける
WordPress 管理画面から Contact Form 7 のお問い合わせフォームを開きます。
先ほどコピーしたコードを貼り付けます。


最後に変更を保存します。
STEP3. ロゴを非表示にする
最後に reCAPTCHA のロゴを非表示にします。
再度、reCAPTCHA よくある質問ページにアクセスします。


右上のアイコンをクリックして、コードサンプルをコピーします。
コピーできたら、WordPressの管理画面から「追加CSS」のページを開きます。
※使用しているWordPressテーマによって異なりますが、通常は「外観」→「カスタマイズ」の中にあります。


コピーしたコードを貼り付けて保存します。
STEP4. 最後に確認
最後にウェブサイトを開き、以下を確認します。
- reCAPTCHA のロゴが非表示になっている
- お問い合わせフォームに以下のテキストが追加されている
This site is protected by reCAPTCHA and the Google
Privacy Policy and
Terms of Service apply.
まとめ
いかがでしたでしょうか?今回は、WordPress の Contact Form 7(コンタクトフォーム)を利用していて、スパムメールに困っている人向けに Google のサービス reCAPTCHA (v3) を導入する方法についてご紹介しました。
ただ、上記の方法でデメリットもないわけではありません。
それは「表示スピードが遅くなる」ことです。
気になるという方はプラグイン「Invisible reCaptcha for WordPress」を導入してみるのも1つの方法です。このプラグインを使うと、reCaptchaをサイト全体ではなく、フォームだけに機能させることができます。
また、プラグインを使うことで、サイトが重くなったり、他のプラグインとの相性で非表示にならない可能性もあります。
自分に合った方法で、大切なサイトをスパムメールから守ってくださいね。