スパムメール対策にはWordpress初期状態で入っているプラグインの『Akismet Anti-Spam』が使われていますが、無料版では商用利用ができないとのことですので、アフィリエイトブログには使用が出来ません。
そこで、「Contact Form7」を使用している方向けに、Googleアカウントをもっている方はすぐにでも対応できて無料の「Google reCAPTCHA(v3)」の設定方法をご紹介します。
Google reCAPTCHAとは?
reCAPTCHAは不正アクセスや悪質なbotからWEBサイトを守るためのセキュリティ機能です。
サイトのお問い合わせフォームやログインフォームで「わたしはロボットではありません」と、ボックスにチェックを入れたり、「〇〇の画像を選択してください」と指定の画像を選択したりしたことはありませんか?
それはreCAPTCHA(v2)で、私たちが人間であるかどうかの試練が試されていました。
reCAPTCHA(v3)は、2018年10月29日に公開された最新のreCAPTCHAで、GoogleのAIがユーザーの行動を分析し人間かbotなのかを判別するので、ユーザーがチェックボックスにチェックしたりなどする作業が発生することがなくなりました。
Google reCAPTCHA v3 導入の手順
この手順はContact Form 7を使用している方が前提ですので、使用していない方はインストールしましょう。
手順は以下の3つになります。
- 【Google reCAPTCHA v3のAPIキーを取得する
- Contact Form 7 にサイトキー、シークレットキーを設定する
- reCAPTCHAの保護マークの調整
1. Google reCAPTCHA v3のAPIキーを取得する
Googleにログインしている状態で、以下のサイトにアクセスして下さい。
→ Google reCAPTCHA
Googleにログインしていない場合はログイン画面が表示されるので、ログインしてください。
このような画面が表示されますので、上にある「v3 Admin Console」をクリックします。
ポイント
ドメインの部分は、ドメイン名のみ入力しましょう。
例 ×: http://xxx.com/ 〇:xxx.com
ドメイン名の左の「+」をクリックすると入力フォームが増えるので、複数のドメインを登録することができるよ。
サイトキー、シークレットキーをコピーして、この後に使用するのでメモ帳などに張り付けておきましょう。
2. Contact Form 7 にサイトキー、シークレットキーを設定する
WordPressの管理画面の左のメニューから「お問合せ」→「インテグレーション」を選択します。
reCAPTCHAの項目の「インテグレーションのセットアップ」をクリック
先ほどコピーしておいたサイトキーとシークレットキーを張り付けて「変更を保存」
サイトを開いて、ウィンドウの右下にこのようなマークが表示されていたら成功です。
3. reCAPTCHAの保護マークの調整
マークが表示されたのは良いのですが、他の要素と被ってしまって邪魔になったりします。
気になる場合は、ある文言をどこかに表示すれば「reCAPTCHA」マークを非表示にすることができるので、その方法を紹介します。
英語ですが、こちらのサイトに説明があります。
I’d like to hide the reCAPTCHA badge. What is allowed?
You are allowed to hide the badge as long as you include the reCAPTCHA branding visibly in the user flow. Please include the following text:This site is protected by reCAPTCHA and the Google
引用:I’d like to hide the reCAPTCHA badge. What is allowed? | Google Developer
<a href=”https://policies.google.com/privacy”>Privacy Policy</a> and
<a href=”https://policies.google.com/terms”>Terms of Service</a> apply.
訳すると・・・・
バッジを非表示にしたいですか?以下の文章を見える場所に表示するなら、非表示にしていいですよ。
このサイトはreCAPTCHAによって保護されており、Googleの<a href="https://policies.google.com/privacy">プライバシーポリシー</a>と<a href="https://policies.google.com/terms">利用規約</a>が適用されます。
自分のwordpressサイトのお好きなところに表示させましょう。
私はウィジェットでフッターに表示させているよ
次は「reCAPTCHA」マークを非表示にします。
WordPress管理画面左側のメニューから「外観」→「テーマファイルエディタ」
style.cssが開かれるので、一番下にこのCSS文を追加してファイルを更新。
.grecaptcha-badge { visibility: hidden; }
サイトをリロードしてみると、「reCAPTCHA」マークが消えました。
まとめ:reCAPTCHA(リキャプチャ)の設定をしてContact Form7のスパム対策をしよう
サイトを運営していると、そのうちスパムメールが飛んでくるようになり、不正ログイン攻撃も増えてきます。
速いうちにこのような対策をしておくことにより、いざというときに頼りになります。
「reCAPTCHA」を設定することが出来ればプラグインの「Akismet Anti-Spam」は不要になるので無効化しておきましょう。