タイトルはちょっとあおり気味にw
問い合わせフォームから飛んでくるスパム対策のために、 Akismet や 画像認証 など色々テクニカルな方法があります。
しかし、私はどっちも使っていません。
- Akismetは、スパムアドレスじゃないのにはじかれることがあった(気がする)
- 画像認証は設定が面倒だし、それ以上にコンバージョン率が下がりそう
それでも、私のところにはスパム問い合わせは飛んできません。
(あ、もちろん手打ちの営業メールは時々飛んできますよ)
今回ご紹介する方法は意外なほどシンプルに自動スパムを弾く方法です。
以下の1行を追加してみてください
[acceptance acceptance-0] 確認ページはございません。内容をご確認の上チェックを入れてください
これだけです。
これだけで、スパムが届かなくなります。
[acceptance] は、よく会員登録などで見かける「同意して送信」のために使うチェックボックスを生成するタグです
Acceptance のチェックボックスにチェックを入れないと送信できないようになるのですが、これにスパムプログラムが気が付かないようなのです。
※5月30日追記※
説明がちょっと足りなかったので補足。
この Acceptance は、タグの作成の中では「承諾の確認」です。
名前は適当に何でもいいので、このショートコードをフォームに追加して、そのチェックボックスの脇に説明文を入れればOKです。
実は、スパム対策が目的じゃなかった
Acceptance を利用したのは、実はスパム対策が目的ではなく、結果的にスパム対策になっていたというのが実際のところです。
Contact From 7 を使い始めた当初、1つの問題にぶつかりました。
必須項目を全部入力後、間違えて Enter を押すと送信されてしまう
「まだ入力終わってないのに送信されてしまう!」ということで意外と無視できない問題でした。
かといって、対策として全部必須項目にするのも本末転倒。
そこで使ってみようと思ったのが Acceptance です。
とはいえ、ただ単にチェックボックスを入れても意味不明。
なので、せっかくだから「確認画面はないよ」という注意喚起の文章を付けた形です。
それ以来、納品先のお客様全て含めて、1回も自動のスパムメールは見ておりません。
この個人ブログの方は手抜きで当初デフォルトのままで運用していたためスパムがチラホラ届いていましたが、Acceptanceを追加後は全く届いていません。
如何でしょうか?
是非お試しください^^