先日まだほとんど稼働していないサイトに設置したContact Form 7から、スパムと思われるメールが届きました。特に細かい設定をせずに使っていたのですぐに対策しました。届いたメールはプログラミングを使って自動的に送られてくるものだと思いますが、気持ちの良いものではありませんよね。
Contact Form7にAkismetでスパム対策する方法
Contact Form 7にスパム対策をする方法はいくつかあります。
もっと簡単な方法もありますが、がっちりやるにはこの2点は外せないようです。
・reCAPTCHAを使う
設置したサイトのコンタクトフォームの設定画面でも推奨されていました。
ダッシュボードの「お問い合わせ」→「コンタクトフォーム」で編集画面に入ります。
さらにコメントブラックリストを使えば、指定したキーワードを含むか指定したIPアドレスから送られてきたメッセージを排除できます。
ですが、今のところ届いたメールはプログラミングを使って自動的に送られてくるものだったので今のところコメントブラックリストの必要性はありません。
このページではAkismet でスパムフィルタリングする方法をメモします。
Akismet でスパムフィルタリングする方法
こちらのContact Form 7公式ページを参考にしました。
Akismet は最初からWordPress にインストールされているので、あとは有効化して WordPress.com の API キーをセットし、定を完了させておきます。
コンタクトフォームに Akismet を実装する手順
ダッシュボードの「お問い合わせ」→「コンタクトフォーム」で編集画面に入り、
フォームの内容を編集します。下の、赤で囲んだ部分です。
コンタクトフォームは初期状態では以下のようになっています。
※初期状態
<label> お名前 (必須)
[email* your-email] </label><label> 題名
[text your-subject] </label><label> メッセージ本文
[textarea your-message] </label>[submit “送信”]
これを、以下のように編集(追加)します。
※編集後(赤太字が追加部分)
[text* your-name akismet:author] </label><label> メールアドレス (必須)
[email* your-email akismet:author_email] </label><label> 題名
[text your-subject] </label><label> メッセージ本文
[textarea your-message] </label>[recaptcha][submit “送信”]
また、送信者の URL を入力する項目を追加する場合は、以下を追加する。
これでAkismet でスパムフィルタリングが完了しました。
reCAPTCHAを使ってスパム対策する方法はこちらです。