WordPressのプラグイン「Contact Form 7」のスパム対策に「Akismet」と連携する

このブログでは、問い合わせフォームの設置に、WordPressのプラグインとしてポピュラーな「Contact Form 7」をデフォルトのまま設置しています。

まだまだ、問い合わせなんかくるようなブログではないのですが、ちらほらと外国からアルファベットが羅列した件名で、訳の分からないスパムメールが届くようになってきました。

何だか放っておくのも気になるし、スパムメールが増殖する前に対策をとることにしました。

方法としては、CAPTCHAという画像認証を使った方法もあるようですが(更にプラグインの追加が必要)、先日設定したコメントスパム対策のプラグインのAkismetと連携させることが出来るとのことなので、今回はそちらの設定をしてみることにしました。

設定には、こちらの「Contact Form 7」のサイトを参考にさせていただきました。ありがとうございました。
Akismet によるスパムフィルタリング | Contact Form 7

フォームに追加するオプションを引用させていただくと、

akismet:author
送信者の名前を入力する項目にこのオプションを追加する。
例: [text* your-name akismet:author]

akismet:author_email
送信者のメールアドレスを入力する項目にこのオプションを追加する。
例: [email* your-email akismet:author_email]

akismet:author_url
送信者の URL を入力する項目にこのオプションを追加する。
例: [text your-url akismet:author_url]

Akismet によるスパムフィルタリング | Contact Form 7」より

これで、Akismetがその送信がスパムらしいかどうかを判定してくれるそうです。
ちなみに現在、URLを入力する項目は設定していないので、3つ目の設定はしていません。

で、この設定で新しく作ったフォームのコードを、固定ページの既存のコードと貼り代えて作業終了ですね。

この設定がちゃんと機能しているかの確認をするには、

これが機能しているか確認したい場合は、送信者の名前として “viagra-test-123″ を入力して送信することでテストすることができます。このテスト送信は常にスパムとして判定されるはずです。

とのことで、実際に試してみました。

20130415_Contact-Form7_spam

Akismetがスパムと判定すると、このように応答メッセージにオレンジのボーダーラインが付くそうです。

これで、しばらく様子を見ようと思います。

【関連記事】
あまりにコメントスパムが多いので、WordPressのプラグイン「Akismet」を設定しました | ローカルブロガーのメモ帳
WordPressのプラグイン「Contact Form 7」を使用してみる | ローカルブロガーのメモ帳