概要
このプラグインはContact Form 7へのスパムbotからの投稿をブロックするプラグインです。見えない入力欄を用意して投稿時にjavascriptでCAPTCHA入力に変わる独自の確認トークン入力処理をで行うことでスパムBotからの投稿をブロックします。作者の環境では、今のところこのプラグインで100%スパムBOT投稿がブロックできています。
利用ユーザーのお問い合わせフォームの見え方は変わりません。(追加される入力欄は非表示でユーザーから見えません)
(※)残念ながらこのプラグインではブラウザを介した手入力によるスパム投稿はブロックできません
このスパムbot対策手法は先にリリースしている Sz Comment Filter と同じ方法で実装しています。
(注意)このプラグインの作者はContact Form 7プラグイン開発元とは関係ありません。ご注意下さい。
動作要件
このプラグインはContact Form 7 バージョン3.6以降との組み合わせで動作します。使い方
1.インストール方法
WordPressの管理者メニューから →「プラグイン」→「新規追加」
→「contact-from-7-add-spam-bot-filter」を検索
→「いますぐインストール」
→「有効化」します。
もしくは
FTPで’contact-from-7-add-spam-bot-filter’フォルダを
/wp-content/plugins/
へ配置WordPressの管理者メニューから →「プラグイン」
→「インストール済みプラグイン」
→
sz-comment-filter
を「有効化」します。
2.タグの組み込み方法
→「お問い合わせ」>「コンタクトフォーム」を選択します。→使用しているコンタクトフォームの編集画面を表示します。
→フォームにタグ’Anti-Spambot’を加えます。
具体的には、[タグの作成]から一覧リストに表示される’Anti-Spambot’を選択。表示されたタグ要素を左のフォームへペーストします。
例)
<p>お名前 (必須)<br />
[text* your-name] </p>
<p>メールアドレス (必須)<br />
[email* your-email] </p>
<p>メッセージ本文<br />
[textarea your-message] </p>
<p>[submit "送信"]</p>
↓【編集】
<p>お名前 (必須)<br />
[text* your-name] </p>
<p>メールアドレス (必須)<br />
[email* your-email] </p>
<p>メッセージ本文<br />
[textarea your-message] </p>
[antispambot antispambot-20]
<p>[submit "送信"]</p>
3.ブロックした履歴の確認
WordPressの管理者メニューから →「お問い合わせ」→コンタクトフォーム一覧表示の上部にブロックした回数と、直近のブロックした投稿内容の履歴が表示されます。
(※)表示されない場合は上部メニューの「表示オプション」から「レポート表示」にチェックが入っているか確認してください。

FAQ
Q.具体的にどのような方法でブロックしているんですか?
JavaScript(AJAX) と隠れた2つの入力フィールドを使ってブロックしています。Q.1つ目のフィールドは何に使っていますか?
このフィールドはJavaScriptにより表示を消しています。「送信」ボタンを押したタイミングで、Ajaxによりサーバーへトークンコードをとりに行き、取得したトークンコードをこのフィールドへセットします。スパムボットの場合このフィールドへ正しいトークンがセットされることなくメッセージ送信されてきます。
サーバー側でトークンが正しくなければ入力エラーとして扱い投稿メッセージを受け付けません。
Q.2つ目のフィールドは何に使っていますか?
このフィールドはCSSスタイル定義により表示を消しています。2つ目の入力フィールドはトラップのダミー入力です。このフィールドは利用者には通常見えないので何も入力されずにメッセージ送信されてきます。しかしスパムボットはこのフィールドへURLやEmailなど、なぜか一生懸命入力してきてくれます。
サーバー側で何か入力があればエラーとして扱い投稿メッセージを受け付けません。
Q.javascriptがオフのブラウザ環境ユーザーでも使えますか?
使えます。ただしその場合、トークンコード入力欄が表示されるのでCAPTCHAのように手入力で確認文字を入力する必要があります。