ボットによるフォーム送信を防ぎたいですか?
WordPressではフォームスパムが大きな問題となっており、ボットはスパムプラグインを回避する方法を見つけることができます。
幸いなことに、このような事態を食い止める非常に効果的な方法がいくつかある。
なぜボットはコンタクトフォームに入力するのか?
ボットは、スパムやフィッシングリンクを送信するためにフォームに入力します。時には、ボットはあなたを釣るために設計された偽装ドメイン更新メールを送信するために使用されます。
保護がなければ、危険なスパムボットはあなたのサイトに障害を引き起こしたり、マルウェア感染を広めたりする可能性さえある。
CAPTCHAはボットを阻止するか?
はい、CAPTCHAはボットを阻止するのに役立ちます。Google reCAPTCHAは最も効果的なCAPTCHA手法のひとつです。しかし、ボットがCAPTCHAルールを回避していることが判明した場合は、CAPTCHAに代わるものを使用する必要があるかもしれません。
ボットによるフォーム送信を防ぐ方法
この投稿では、WPFormsを使って、ボットによるフォーム送信を阻止するさまざまな方法を紹介します。
1.アキズメット
AkismetはWordPressで最も広く使われているスパムフィルタリングツールです。コメントスパムをブロックするだけでなく、 最高のフォームビルダープラグインとの統合も非常に優れています。
WPFormsのすべてのバージョン(Liteを含む)には、ボットをフィルタリングするのに役立つネイティブAkismetの統合が付属しています。この設定はスパム保護とセキュリティ 設定で見つけることができます。このオプションが表示される前に、Akismetがすでにセットアップされ、あなたのサイトに接続されている必要があることに注意してください。

Akismetは、フォームに入力されたスパムをフィルタリングするために、既知のスパムエントリーの膨大なデータベースを使用します。また、ユーザーの行動を分析し、ボットと実際の人間のユーザーを区別することもできます。
詳しくは、Akismetを使ってコンタクトフォームのスパムを防ぐ方法をご覧ください。
2.最新のスパム対策
スパム対策はWPFormsに組み込まれています。フォームのスパム対策とセキュリティ設定で、特定のフォームのオンとオフを切り替えることができます。一番の利点はバックグラウンドで動作することです。WPFormsが処理してくれます。

最新のアンチスパムプロテクションを他のアンチスパム対策と組み合わせることで、二重のプロテクションができ、ボットの心配に時間を費やす必要がなくなります。
3.国とキーワードのフィルター
ボットスパムは特定のパターンに従うことがよくあります。フォームへのスパム送信を多く受けている場合、特定の国から来る傾向があったり、特定の単語やフレーズを含んでいることに気づくかもしれません。
WPFormsの国やキーワードフィルタを使用して、これらの疑わしい要素を含むフォーム送信をブロックすることができます。

また、電子メール許可リストや拒否リストを作成して、偽の電子メールや本物の電子メールからの送信を防ぐこともできます。

この方法が効果的であれば、IPアドレスに基づいてサイトからの訪問者をブロックしたいと思うかもしれません。この方法については、ベストセキュリティプラグインのリストをご覧ください。
4.クラウドフレア・ターンスタイル
Cloudflare Turnstileはプライバシーに特化したCAPTCHAのようなサービスです。Cloudflareのアカウントにサインアップすれば無料で使えるので、スパマーを足止めするのに最適だ。
設定するには、まずCloudflareアカウントにログインするか、新規にサインアップする必要があります。
クラウドフレアのターンスタイル・サイトとシークレット・キーにアクセスする
アカウントを設定したら、ダッシュボードに行き、Turnstileページを見つける。ここで、あなたのサイトを追加する必要があります。

次の画面でウェブサイトの情報を入力します。次にウィジェットのタイプを選択します。これにより、CloudflareがCAPTCHAリクエストをどのように処理するかが決まります。

次に「作成」をクリックする。

あなたのCloudflare Turnstileサイトとシークレットキーが生成されます。
WPFormsでCloudflare Turnstileを有効にする
WordPressのダッシュボードで、WPForms " Settings " CAPTCHAに行き、Turnstileオプションを選択します。

提供されているフィールドにサイトとシークレットキーを入力します。

他にもいくつか設定できるオプションがあります。詳しくはCloudflare Turnstileの設定ガイドをご覧ください。
必ず設定を保存してください。これでTurnstileをフォームに追加する準備ができました。
Cloudflare Turnstileをフォームに追加する
フォームビルダーでフォームを開き、画面左側の設定タブをクリックします。そしてスパム保護とセキュリティ 設定を選択します。
CAPTCHA」の下にある「Enable Cloudflare Turnstile」をオンに切り替えます。

あるいは、フォームにTurnstileフィールドを追加することもできます。

Turnstileが有効になると、フォームに保護されていることを示すバッジが表示されます。

これで完了です!これでフォーム送信前にフォームデータがCloudflareのスパム対策システムを通過します。
5.数学またはQ&A CAPTCHA
WPFormsはプロユーザーにカスタムCaptchaオプションを提供しており、ボットから人間のユーザーをフィルタリングするためのカスタム数学の質問を設定することができます。
このオプションを使って、人間にしか解けない質問と回答を作成することもできます。
シンプルな方法ですが、ボットによるフォーム送信を阻止する最も効果的な方法のひとつです。サードパーティプロバイダーを使いたくない場合にも最適です。
使い方はこうだ。
ボットが送信しているフォームを開く。
プロユーザーであれば、Fancy Fieldsセクションに Custom Captcha フィールドがあります。このフィールドをフォームにドラッグ&ドロップしてください。

WPForms Liteをご利用の場合は、Proプランにアップグレードすることでこの機能をご利用いただけます。
さて、質問を設定する必要がある。
そのためには、Custom Captchaフィールドをクリックし、Advancedタブをクリックします。

タイプ」と書かれたセクションまでスクロールダウンし、「数学」と書かれたフィールドをクリックします。お望みであれば、これを質問に変更することもできます。

フォームを保存すると、質問が表示されます。人間の助けがなければ、ボットはこの問題を解くことができません!

しかし、この方法では、断固とした人間のスパマーを止めることはできない。それにはreCAPTCHAが役立ちます。
6.Google reCAPTCHA
Google reCAPTCHAは、何百万ものウェブサイトのフォームスパム対策に欠かせないツールです。設定方法は以下の通りです:
reCAPTCHAアカウントを作成する
WordPressでreCAPTCHAを使用するには、reCAPTCHAのアカウントを作成し、あなたのウェブサイトのシークレットキーとサイトキーを取得する必要があります。
始めるには、reCAPTCHAの管理コンソールにログインして、新しいサイトを登録し、これらのキーを入手してください。
まず、ラベルを入力する必要があります。これはあなたのドメイン名です。

次に、reCAPTCHAのタイプを選択する必要があります。
グーグルは、さまざまな方法で実在の人物を検出する:
- reCAPTCHA v3は、訪問者が何もしなくても、ユーザーの行動を評価し、ボットの活動をフィルタリングすることができます。
- reCAPTCHA v2は、チェックボックスのようにユーザーに課題を提示します。
使用するバージョンが決まったら、その横にあるチェックボックスにチェックを入れてください。
このガイドでは、不可視のreCAPTCHA v2を使用します。このreCAPTCHAタイプは、スパム防止とユーザーエクスペリエンスの良いバランスを提供します。

次に、reCAPTCHAキーを使用するドメイン名を入力します。ここには複数のサイトを入力できます。
また、reCAPTCHAの利用規約に同意する必要があります。同意したら、送信をクリックしてください。

そして、新しいサイトを登録する!
Site KeyとSecret Keyが表示されます。これらを取得し、WordPressの管理ダッシュボードに戻りましょう。

さて、WPForms " Settings " CAPTCHAに 向かいます。
hCaptcha、reCAPTCHA、またはnoneの選択肢があることがわかります。設定を続けるにはreCAPTCHAを選択してください。

前述したように、reCAPTCHAには様々なバージョンがあります。私たちは不可視reCAPTCHAのサイトキーを取得しているので、WPFormsの設定でそれを選択します。

次に、サイト・キーとシークレット・キーを入力し、忘れずにこれらの設定を保存してください。これでこの段階は終了です。
次のステップでは、フォームにreCAPTCHAフィールドを追加します。
フォームにreCAPTCHAを追加する
前の方法を試したのであれば、すでにフォームが用意されているはずです。このフォームを見つけるには、WPForms " All Formsをクリックしてフォームの概要ページを開きます。

フォーム名をクリックしてフォームビルダーで開きます。フォームにすでに WPForms Custom Captcha フィールドがある場合は、これを削除して reCAPTCHA フィールドを使用できるようにします。
フォームをクリックしてフォームビルダーで開きます。フォームビルダーの標準フィールドセクションに移動し、reCAPTCHA フィールドをクリックして有効にします。

それで終わりだ。
フォームビルダーで、reCAPTCHAが有効になっていることがわかります。

私たちは不可視のCAPTCHAを選んだので、不審な行動がトリガーされるまで、フロントエンドにCAPTCHAフィールドが表示されるとは思わないでください。

WordPressのフォームにreCAPTCHAを追加する方法は以上です。
よりプライバシーに重点を置いたアンチスパムプロバイダーを使いたい場合は、最後の選択肢を試してみてほしい。
7. hCaptcha
hCaptcha は、Google reCAPTCHA に代わる一般的な方法です。
reCAPTCHAとは異なり、hCaptchaのバージョンは1つだけですが、ユーザーに表示する画像チャレンジの難易度を調整することができます。
WordPressのフォームでhCaptchaを使用するには、まずhCaptchaのアカウントが必要です。設定方法は以下の通りです:
hCaptchaアカウントを作成する
まずは、hCaptchaのウェブサイトにアクセスし、サインアップをクリックしてください。

さまざまなプランから選ぶことができる。
企業やウェブサイトには無料プランを選択することをお勧めします。このプランには「Add hCaptcha for Publishers to my website or app」と表示されています。

次のステップは、hCaptcha のサイトキーとシークレットキーを取得することです。
hCaptchaのサイトキーとシークレットキーを取得する
hCaptchaはあなたのためにこれらを生成します。あなたはこれらを取得し、WPFormsの設定で正しく入力するだけです。

しかしその前に、サイト・キーの設定にはいくつかの手順があります。
hCaptcha の管理ダッシュボードで、「サイト」をクリックします。新しいページにサイトキーが表示されます。

設定をクリックします。

ここで主に行う必要があるのは、ドメイン名をサイト・キーに追加することです。
Hostnamesと書かれたセクションで、ドメイン名を貼り付け(ここでも、https://www を追加しないでください)、Add new domainをクリックします。

難易度など、他にもいくつか弄れる設定はあるが、どれも不可欠なものではない。
詳しくは、WordPressでhCaptchaを設定するための完全ガイドをご覧ください。それでは、WordPressに戻り、hCaptchaのサイトキーとシークレットキーを使ってWPFormsを設定します。
WPFormsとhCaptchaを設定する
WordPressダッシュボードに戻り、左サイドバーからWPFormsをクリックし、Settings " CAPTCHAをクリックします。

以前、reCAPTCHAを設定したときにも、ここに来たことがある。今回はhCaptchaを選択します。

サイトキーとシークレットキーを入力し、これらの設定を保存します。

これで hCaptcha が WPForms のフォームで使えるようになりました。次に、フォームに hCaptcha フィールドを追加する方法を紹介します。
フォームにhCaptchaフィールドを追加する
フォームビルダーに戻って、標準フィールドセクションで hCaptcha フィールドを探します。先ほどと同じように、まずフォームに追加した他の CAPTCHA タイプを削除します。
reCAPTCHAを無効にするには、有効にしたときと同じように、フォームビルダーに戻ってreCAPTCHAフィールドをクリックするだけです。
これはhCaptchaにも当てはまります。hCaptchaフィールドをクリックして有効にしてください。

フォームに hCaptcha フィールドが表示されることはありませんが、フォームビルダーの右上に hCaptcha が有効になったことを示す通知が表示されるはずです。

前回お伝えした手順に従って、あなたのウェブサイトのページにフォームを埋め込むことができます。
hCaptchaを有効にしたフォームはフロントエンドではこのように見えます:

以上です!CAPTCHAとCAPTCHAの代替を使用して、ボットによるフォーム入力を防ぐ方法をご紹介しました。これらの方法の1つか2つは、あなたのサイトへのボット攻撃を減らすのに役立つはずです。
次に、ウェブフォームデザインのベストプラクティスを適用する
ボットがフォームに入力するのを阻止する方法をいくつかご紹介しましたが、スパム対策に最適なWordPressプラグインをいくつかご紹介しましょう。
フォームを作る準備はできましたか?最も簡単なWordPressフォームビルダープラグインで今すぐ始めましょう。WPForms Proにはたくさんの無料テンプレートが含まれており、14日間の返金保証がついています。
この記事がお役に立ちましたら、Facebookや TwitterでWordPressの無料チュートリアルやガイドをフォローしてください。
wpforms経由のスパム入力を阻止するための有益な投稿をありがとうございます。ボットを阻止するのに非常に効果的なハニーポットの方法について触れていないことに気づきました。これについて触れないのは何か理由があるのでしょうか?私はWPFORMSと非常にうまく機能するように思われるWP Armourプラグインを使用しています...
🙂
リチャード
やあ、リチャード、
WPFormsは古いバージョンではハニーポット・スパムフィールドを使用していました。しかし、WPFormsは古いバージョンでハニーポット・スパムフィールドを使用していました。詳しくはガイドをご覧ください。
お役に立てれば幸いです。
ReCaptchaやhCaptchaと並んで、Cloudflare Turnstileをオプションとして追加する予定はありますか?
アンドリュー、現在のところ、私たちのフォームにはReCaptchaやhCaptchaと並んでCloudflare Turnstileをオプションとして追加する機能はありません。しかし、それが非常に便利であることには同意しますし、将来のロードマップを計画する上で、私たちのレーダーであることも確かです。このリクエストにあなたのメールも追加しました。
ありがとう。
そしてもうひとつは、コメント欄でURLの入力を禁止するために使っています。 これはカスタムコードですが、組み込まれていれば素晴らしいオプションになるでしょう。
トム - はい、その通りです!カスタムコードを使用して、フォームフィールドに入力されるURLを制限することができます。同じことを実現するためのデベロッパーガイド です。
お役に立てれば幸いです。