WordPressで作ったサイトの問い合わせフォームに、海外から大量のスパムメールが送られてきて困っていました。
プラグイン「Contact Form 7」で作った問い合わせフォームなら、設定次第でスパムメールをブロックできます。
こんにちは、よしぞう(@otonahack)です。
WordPressで作ったサイトを運営しています。
問い合わせフォームはプラグイン「Contact Form 7」で作っていますが、そのままの設定だとスパムメールが沢山届きます。
今回は「Contact Form 7」でスパムメールをブロックする方法を説明します。
「Contact Form 7」の詳細については公式サイトをどうぞ
↓↓↓
公式サイト
Contact Form 7
目次:Contact Form 7で問い合わせスパムメールをブロックする方法
- 結論:「クイズ」を使ったらスパムメールが来なくなった!
- CAPTCHAは設定が面倒くさい
- 「Contact Form 7」で「クイズ」を使う方法
- 念のため「承諾確認」のチェックボックスも一緒に使う
- まとめ
結論:「クイズ」を使ったらスパムメールが来なくなった!
「Contact Form 7」が標準で装備している「クイズ」設定を使ったら、問い合わせメールのスパムがピタッと止まりました。
「クイズ」は文字通り、問い合わせフォームにクイズを記載して正解を入力しないと送信できない機能です。
Contact Form 7 公式サイト
クイズ
サイトには下図のように掲載しました。
もちろん難しいクイズではなく誰もが分かるクイズを用意します。解答も問題と一緒に明記します。
「この答えを入力してね」と書いておけば、日本語の分かる人なら問い合わせを送信できます。
送られてくるスパムメールのほとんどは海外からの自動書き込みだと思うので、この方法は役に立つようです。
「承諾確認」のチェックボックスだけではだめ
最初は、同じく「Contact Form 7」が装備している機能「承諾確認」を使っていたのですが、まったく防げませんでした。
「承諾確認」は送信する前に確認ボタンにチェックを入れさせる機能です。
Contact Form 7 公式サイト
承諾確認チェックボックス
チェックを入れないと送信ボタンを押せないのですが、スパムの自動書き込みはチェックを入れられるほど進化しているんですね。。。
現在は、下の図のように、念のため「クイズ」と「承諾確認」の両方を使っています。
CAPTCHAは設定が面倒くさい
「Contact Form 7」はランダムでグニャグニャしたアルファベット画像を表示する「CAPTCHA」にも対応しています。
しかし、設定がやや面倒です。
なるべくなら「Contact Form 7」単体でサクッと設定できる方法が良いなと思い、「クイズ」を使う方法にたどり着きました。
「CAPTCHA」を利用したい方は、下記の「Contact Form 7」公式サイトを参考にどうぞ。
Contact Form 7 公式サイト
・reCAPTCHA (v3)
・Really Simple CAPTCHA
「Contact Form 7」で「クイズ」を使う方法
「Contact Form 7」で「クイズ」を使う設定方法を解説します。
「Contact Form 7」のフォームを作成する画面で、テキストボックスの上に「クイズ」というボタンがあります。これをクリックします。
「クイズ」をクリックするすると、小さい画面が開きクイズを記入できます。
「クイズと回答」というテキストボックスに、「クイズの問題|クイズの答え」という形で記入します。問題と答えの間に「|」(縦棒)を入れます。
設定が完了すると、下記のように「クイズ」のコードが入力されます。
すぐに設定したい人は下記の文章とコードを上記入力画面で直接入力してください。そのまま使えると思います。
下記のボックスに「カツオ」と入力してください(海外からのスパム対策です)。
[quiz quiz-132 "サザエさんの弟は?|カツオ"]
設定を保存すれば問い合わせフォーム画面に表示されます。
下記の図のように、問い合わせフォームでクイズの答えを間違うと「クイズの答えが正しくありません」と表示され、送信されません。
念のため「承諾確認」のチェックボックスも一緒に使う
「承諾確認」の設定方法も説明します。スパム対策の効果は低いのですが念のため合わせ技で使用しても良いでしょう。
「クイズ」と同様にコンタクトフォームの設定画面に「承諾確認」というボタンがあるのでクリックします。
設定画面が開くので、問い合わせフォーム画面に表示する文言を入力し、「チェックボックスを任意選択にする」のチェックを外します。外すことで必須項目になります。
設定が完了すると、下記のように「承諾確認」のコードが入力されます。
すぐに設定したい人は下記のコードを上記入力画面で直接入力してください。そのまま使えると思います。
下記が「承諾確認」を設定したお問い合わせフォームです。
送信者がチェックを入れずに送信しようとしても、マウスカーソルの横に「駐車禁止」のようなマークが現れて送信ボタンを押せなくなります。
チェックボックスにチェックを入れれば、送信ボタンを押せるようになります。
まとめ
以上、「Contact Form 7」の問い合わせフォームから届くスパムメールの対策方法でした。
今のところ、この設定でスパムメールを完全に防げています。
スパムメールのAI能力が向上しない限り、しばらくは大丈夫だと思います。