コンタクトフォーム7の迷惑メール対策
![]()
WPでコンタクトフォーム7を使用されているサイトはとても多いんじゃないかと思います。
コンタクトフォームで迷惑メール、スパム対策をするには何がベストでしょう?
今回はそんなことをまとめておきます。
コンタクトフォームの迷惑メール対策法
大まかにこのようなことがあると思います。
・Akismetを使用する
・コメントブラックリストを使用する
・functions.phpをいじる
・reCAPTCHAを使用する
コンタクトフォームの機能を使う
まず一番簡単にできる対策としてコンタクトフォームそのものの機能を活用する、というもの。
コンタクトフォームの編集で「チェックボックス」を追加したり、「クイズ」を追加したりできます。
これらを使用することで迷惑メール対策にもなる、という事ですね。
ただチェックボックスくらいだと、最近のスパムはほとんどすり抜けられてしまうようです。
ではクイズまで、となると、、スパム対策以前に、ユーザー側への煩わしさが問題になっちゃいますね笑
余計なことは必要ないので「まず試してみる」にはいいかもしれません。
が、これで最善とも言い難くもあります。
Akismetを使用する
これはデフォルトで入ってるプラグインなのでWPを使用しているほとんどの方が目にはされていると思います。
しかし有効にするだけでは何も意味がありません。無料ですが登録が必要です。
海外のプラグインですので英語が得意でない方は使い方など説明してくれているサイトなどで確認しながら、がいいですね。
また本来、Akismetは無料登録だと商用利用不可です。商用利用=有料になります。
無料の登録でもアフィリエイト広告など使用していなければ、そのまま使えてしまうのですが、お客さんのサイトなどでは使用しない方が賢明と思います。
自分は真っ先に削除してしまうプラグインです笑
コメントブラックリストを使用する
WP自体の機能で
設定 > ディスカッション から設定できます。
これはどちらかというと投稿などのコメント欄の対策ですね。
IPアドレスまで入れられたら効きそうな気もしますが、IPアドレスでのスパム対策も最近は難しいと、どちらかで見受けました。
いずれにしてもこれだけで「対策できた」とは考えられなさそうです。
functions.phpをいじる
これは海外スパム専用で「日本語が一文字も入ってない」事を対象に対策するものです。
迷惑メール、スパムの多くは海外からなので効果はしっかりでると思います。
ただ海外とのやりとりのあるサイトではNGです。
また functions.php をいじるので、子テーマを使用する、またはテーマを更新する際には
その都度、書き換えも必要になります。
こちらのサイト様で詳しく説明されています。
https://kobe-tshirt.com/contact-form-7-spam-mail/
reCAPTCHAを使用する
Googleの「reCAPTCHA」を使用します。
これが現状、一番おすすめされてる手法だと思います。
「ロボットではありません」てやつですね。
ver.2までは、あのめんどくさい画像選んだりするようなものだったのですが、
ver.3ではロジックが変わって、ただチェックを入れるだけで良くなったと。
ちなみにXサーバーもこれを推奨しています。
https://www.xserver.ne.jp/news_detail.php?view_id=7118
Googleなので、当たり前ですがGoogleアカウントが必要です。
結局またGoogleか、、と思いつつ笑
今、巷で一番おすすめの Google「reCAPTCHA」については
ちょこっとだけ詳しくこちらに記しています。
まとめ
何事でもそうですが、状況、環境次第でベストな方法は変わると思います。
とりあえず手軽にやれることをやっておこう、というのであれば
まずはコンタクトフォームで「チェックボックス」をつける事からはじめてもいいと思います。
既に迷惑メールがたくさんきている、スパム攻撃されているなどの場合で
それが海外からであれば、functions.phpをいじるのが効果テキメンでしょう。
海外とのやり取りがあったり、phpをいじるのが不安、面倒という方であれば
Googleの「reCAPTCHA」をおすすめします。
また根本的な話になってしまいますが、実際に被害がでている場合には
サーバー側での対策を考えることもありですね。
ご利用のサーバーでのサービスや出来ることを見返すと答えがあるかもしれません。