【旧刊】WordPressテーマ制作のみを取り扱った別冊電子書籍がAmazon Unlimitedでお楽しみ頂けます!!
Amazon Unlimited内で 田中勇輔 で検索してください。

☓ 閉じる

14Dec2013

[WordPress] Contact Form 7 にスパムブロック機能を追加する方法

WordPressにはakismetというスパム防止プラグインがあります。
インストール時にデフォルトテーマと同様にakismetもインストールされるため、事実上、WordPressのデフォルトプラグインと呼べるでしょう。

このakismetを有効化すると、スパムコメントをかなりの精度でブロックしてくれます。
コメント欄を利用しているユーザーには必須のプラグインですね!

WordPressユーザーが頭を悩ますのスパムは、コメントスパムの他に、もう一つあります。
それが今回の内容である「コンタクトフォーム経由のスパムメール」です。

当サイトでも使用している非常にメジャーなコンタクトフォームプラグイン「Contact Form 7」は、簡単な設定項目を追加するだけで、akismetのスパム判定機能を利用することができます。
今回はcontact form 7とakismetを連携させて、スパムメールをブロックする方法をご紹介します^^

1. akismetを有効化する

まずはakismetを有効化しましょう。

[プラグイン – akismet] から設定画面に進みます(akismet設定は[設定]の項目ではないのでご注意ください)。

akismetの利用にはAPIキーが必要です。また法人の利用は有料などの制限もありますので、ご利用の際はよくお調べください。

contact form 7にスパム防止機能を追加する方法

※akismetキーは本サイトで登録する他、WordPress.comアカウントを取得することでも入手可能です。

2. contact form 7に設定を追加する

まずは作者ページを確認してみましょう。
http://contactform7.com/ja/spam-filtering-with-akismet/

akismetと連携させる手順は以下の3つのうち、最低1つは有効化しておく必要があります。

・名前入力項目に akismet:author を追加する
・メールアドレス入力項目に akismet:author_email を追加する
・URL入力項目に akismet:author_url を追加する

左メニュー[お問い合わせ]から、スパムブロックを有効化したいコンタクトフォームの編集画面を開きます。

コンタクトフォームにスパム防止を追加

以下は設定例です。
この例では、送信者にURL入力を求めていないため、「名前入力欄」「メールアドレス入力欄」の2箇所にakismet用タグを埋め込んでいます。

お名前 (必須)
[text* your-name akismet:author]

メールアドレス (必須)
[email* your-email akismet:author_email]

お問い合わせ内容
[textarea your-message]

[submit "送信"]

3. 有効化されたか動作確認する

送信者の名前を「viagra-test-123」にすると、akismetは必ずスパム判定するそうです。
これを利用して、Contact Form 7とakismetが連携したか?の動作確認をすることができます。

関連記事