WordPress Contact Form 7でスパムを防止する方法

Last Updated: 2020 年 11 月 14 日 2のコメント

Contact Form 7は、500万以上のサイトにインストールされ使用されている人気のコンタクトフォームプラグインです。 この無料のプラグインを使用して、訪問者や顧客からお問い合わせや見積もりをリクエストできます。 Contact Form 7は直感的ではありませんが、HTMLとCSSを少し知ることで柔軟に使用できます。 ドラッグアンドドロップで簡単にコンタクトフォームを作成したい場合は、WPFormsなどのプラグインを検討してください。

お問い合わせフォームからスパムが多い場合は、次の方法でスパムを防ぐのに役立ちます。

Akismetプラグイン

Akismetはよく知られているアンチスパムプラグインです。 Akismetでは WordPressでコメントやコンタクトフォームを介して送信されるスパムを防ぐことができます。

このプラグインを使用すると、70%程度のスパムがフィルタリングされるという。 以下の他の方法と組み合わせて使用​​すると、スパムを効果的に防ぐことができます。

クイズ(Quiz)フィールド

クイズフィールドを追加してスパムを防ぐことができます。 たとえば、「米国の首都は?」などのクイズを追加すると、人だけがクイズに答えることができるため、スパムの予防に役立ちます。

Contact Form 7 クイズフィールド

上の図のように「クイズ」ボタンをクリックし、「韓国の首都は?|ソウル」のような形式で質問と回答を入力してフィールドを追加できます。 直接ショートコードを追加する場合は、次の形式で入力します。

[quiz quiz-377 "대한민국의 수도는?|서울"]

質問に対する回答を正しく入力しないと、「クイズの回答が正しくありません」というエラーメッセージが表示され、お問い合わせは送信されません。

最小文字数の設定

コンタクトフォームを介して着信スパムにコンテンツが非常に短い場合は、[コンテンツ]フィールドに入力する必要がある最小文字数を設定することを検討してください。 最小、最大文字数の設定方法は Contact Form 7のドキュメントで確認できます。 次の形式で、最小文字数と最大文字数を指定できます。

[textarea* your-message minlength:30 maxlength:500]

上記のように設定すると、30文字未満の内容を入力して送信する場合、「内容が短すぎます。」 エラーメッセージが表示されます。

Contact Form 7 Honeypotプラグイン

Contact Form 7 スパム対策プラグイン - Contact Form 7 Honeypot

このプラグインを使用すると、セキュリティ文字入力フィールド(Captcha)を使用せずに、コンタクトフォームを介して侵入するスパムを効果的にブロックできます。

Contact Form 7 Honeypotの原理は簡単です。 ボットは愚かなので、フィールドを入力する必要があるのか​​、入力しないのかを考慮せずにフィールドを盲目的に記入します。 このプラグインは、入力すると検証に失敗する隠しフィールドを追加します。

このプラグインをインストールして有効にしたら、Generate Tag オプションを使用して honeypot ショートコードを生成し、コンタクトフォームに追加するようにします。

セキュリティ文字(Captcha)を追加する

Contact Form 7にはreCAPTCHAを統合する機能があります。 reCAPTCHAはGoogleサービスなので無料で利用できます。 詳細については、次の記事を参照してください。

最後に、

Contact Form 7でスパムを防ぐためのいくつかの方法を見てきました。 コンタクトフォームを介して多くのスパムが流入する場合は、スパムを減らすのに役立ちます。

私は有料プラグインです Quformを使用していますが、特別な措置を取らなくてもスパムはほとんど入らないですね。 スパムが増加すると、Quformが独自に提供するシンプルなCaptchaフィールドを追加したり、Googleが提供するreCAPTCHAを使用したりできます。

メモ:


2のコメント

コメント

  1. おお……こんなこともありました…
    内心contact form7を使用していますが、スパムが入ってくるとどうやって心配しましたが、夕方に行って設定する必要があります。

    応答
    • コンテキストフォームを介してスパムが届く場合は、この記事に記載されているアクションを実行すると役に立ちます。

      応答