WordPressで定番の問い合わせフォーム作成プラグインといえばContact Form 7ですよね。設定が簡単で柔軟で使い勝手は抜群!
ただ困るのは海外からのSPAM!こればかりはContact Form 7が悪いわけじゃないんですが、クライアントさんから「なんとかしてくれ!」と泣き付かれた人も多いと思います。
WordPressならそんな痒いところに手が届く的なプラグインもキッチリ用意されてるのが強いところ。何処かの誰かが作っててくれてます・・・ありがたいですね。
本来ならランダムに表示される英数字を入力させるCAPTCHAを使いたいところですが、入力を手間をユーザーさん側に要求するのも・・・という人はまずは「
Contact Form 7 Honeypot」を使ってみてください。
Contact Form 7 Honeypotの仕組みとは?
名前こそハニーポットと甘そうですが中身はちょっと辛口。
たいていのSPAMロボットはフォームのすべての項目に入力して送信するという本能がありまして、普通のユーザーには見えない入力フォーム(SPAMロボットには見える入力フォーム)を自動で作成。
その見えないフォームに値が無ければ非SPAMでそのまま送信。見えない入力フォームに値が入っていればSPAMとみなし送信されず廃棄。だいたいこんな仕組みのようです。
Contact Form 7 Honeypotのインストール方法
ダッシュボードからプラグイン→新規追加へ、「Contact Form 7 Honeypot」で検索すると最新バージョンがヒットすると思いますので速攻でインストールしてください。
当たり前ですがContact Form 7 Honeypotは単体で動作しませんので、初めての方はContact Form 7もちゃんとインストールされてるかチェックしてください。
Contact Form 7の設定画面からContact Form 7 Honeypotのタグを作成する
インストールしてもどこが変化したのかわかりませんよね?
Contact Form 7で作成したお問い合せフォームの設定画面にある「タグの作成」というプルダウンをクリックしてみてください。そこにHoneypotが追加されてるのに気づくと思います。
表示されたHoneypotをクリックするとタグ作成画面になります。
基本的にはそのままでも大丈夫なんですが、SPAMロボットも賢くなっているので全く関係無い名前に変更しておいたほうが良いです。
作成されたコードを左のソースに埋め込みます。
場所はどこでも良いのですが、自分の場合はメッセージ本文直前に入れています。(特に理由は無いのですが・・)
保存ボタンを押せばこれで設定は完了です。
動作チェックをしてみましょう
設定したフォームのあるページのソースにHoneypotで作成したコード発見できれば基本的にチェックOKです。
最後に
当たり前ですがSPAMロボットも日進月歩なのでContact Form 7 HoneypotだけでSPAMが完全にカットされるというわけではありませんのでご注意を!
とはいえ、自分の経験ですが某社のフォームに仕込んだら約9割のSPAMはブロックできましたのでコレはオススメです。