Contact Form 7でスパムメール対策する方法

contact form 7 spam WordPress

Contact form 7を導入して暫くしたら迷惑メール(スパムメール)が来る事もあるかと思います

Contact Form 7をカスタマイズして2つ機能を追加しよう」という記事ではContact form 7をデフォルト状態にしておかずいくつか機能を追加してユーザーの利便性を向上させたりスパム対策をとっておくことを勧めていますが、それでもすり抜けてくる強者も中にはいます。。。

スパムは本当にうっとおしい

そんな時にどう対処していくかが重要になってきますね

設定である程度弾いておいて、その網をすり抜けてくるのもしっかりと対応できていればより快適にブログやサイトを運営していくことが可能になります

この記事ではContact form7導入後にスパムメールが来てしまった時の対策方法を紹介していきます

問い合わせページにチェックボックスを導入する

Contact Form 7をカスタマイズして2つ機能を追加しよう」という記事で導入方法を紹介していますが、メールを送信する前にチェックボックスにチェックを入れないと送信できないようにするものです

これにより「スパムメール対策」にもなりますし、「ユーザーの誤送信」も防ぐことが出来ます

追加方法は非常に簡単なので是非記事を参考に試してみて下さい!

Invisible reCAPTCHAの導入

Googleの「Invisible reCAPTCHA」を導入することである程度スパムを回避してもらいます

設置をするにはGoogleアカウントでreCAPTCHAの設定が必要になりますが、「gmail」を利用している時点でGoogleアカウント自体は持っていることになるので難しい事ではありません

Google reCAPTCHA」にアクセスして新しいサイトを登録していきます

contact form 7 spam01
僕は「reCAPTCHAタイプ」の選択では「v2」の「非表示」タイプを選んでいます
contact form 7 spam02

「v3」のスコアタイプでは管理者である本人がボット認定されるなど上手くいかない部分もあるようなので、どれを選択するかは様子を見ながら適宜対応していければと思います

ボットとは、インターネット上の操作を自動でするプログラムのこと

そして登録が済むと「サイトキー」と「シークレットキー」が生成されるのでこの2つをWordPressの設定画面で入力していきます

WordPressの設定画面にログインしたら「プラグイン」から「Invisible reCaptcha」をインストールします

インストールができたら「設定」から「Invisible reCaptcha」の設定画面へ移行し、先ほど発行された「サイトキー」と「シークレットキー」を所定の欄に記入します

contact form 7 spam03

「Contact form 7」で作成した問い合わせページを守ってもらうためには「Contact Forms」タブへ移動し、「Enable Protection for Contact Form 7」の項目にチェックを入れておきましょう

contact form 7 spam04

これである程度のスパムを自動的に弾いてくれるのでしっかりと設定しておきましょうね!

それでもスパムメールが送られてきた時

「Contact form 7」に機能を追加して利用したりプラグイン「Invisible reCAPTCHA」を導入しても上手くすり抜けてくる場合も時にはあります

ただ、ここまで設定しておけばスパムメールが送られてくるのも稀でしょう

頻度が少なければ個別に対応をすることも可能になります

メール送信者のIPアドレスを取得

「Contact form 7」のデフォルト状態では設置されていませんが、タグを追加することで送信者の「IPアドレス」を表示することが可能になります

このIPアドレスを表示しておけば、仮にスパムメールがすり抜けてきてしまったとしても「また来ないようにする」対策をとる事ができます

Contact Form 7でIPアドレスを取得するタグ

Contact Form 7の「特別なメールタグ」というページでも紹介されているように、設定フォームにタグを追加することで自動的にIPアドレスを表示させることが可能です

先ずContact form 7の設定画面に移動します

「お問い合わせ」→「コンタクトフォーム」

そうしたら「メニュー」タブをクリック

contact form 7 spam05

「メッセージ本文」の項目にいき「IPアドレス」のタグを追記します

contact form 7 spam06

タグを追加したら必ず「保存」をクリックして変更を保存しましょう

このタグについてはメール送信者が情報を入力する箇所ではないので問い合わせフォーム自体には表示されません

ただ、管理者宛てに送信されたメール本文にはしっかりと追加されています

IPアドレスをブロックリストに追加

スパムメール送信者のIPアドレスをブロックするために今度は

「設定」→「ディスカッション」

へ移動します

ディスカッションの設定はWordPress導入後の初期設定で一度目を通していることと思います

【ディスカッション設定】WordPressインストール後の6つの設定」の記事でも紹介していますね(´_ゝ`)

初期設定では触りませんでしたが、今回のように特定の相手をブロックしたい場合には表示されていたIPアドレスを「コメントブラックリスト」の欄に入力します

追加したらしっかりと「変更を保存」をクリックしましょうね!

これでスパム対策をすり抜けてくる猛者をブロックすることができるようになります

まとめ

「Contact form 7」を使い、問い合わせページを作成する際にはスパム対策として

  • チェックボックスの追加
  • Invisible reCAPTCHAの導入と連携

をしておくことでだいたいは回避してくれます

それでも中にはスパム対策をすり抜けてくる厄介な敵がいます(; ・`д・´)

そういった相手もしっかりとブロックしていくには

  • 問い合わせフォームに「IPアドレス」を追加
  • ディスカッションの「コメントブロックリスト」に入力

していくことで「次」をなくしていきます

チェックボックスとプラグインの導入でだいたいは快適に運営していくことができるので、もしすり抜けてきた場合は順次対応していくという気構えでいいかと思います