FormArmorMEDIA · FORM OPERATIONS
営業・スパム対策

WordPressフォームのスパム対策7選|迷惑メールの原因と設定手順

WordPressフォームのスパム対策7選を比較。Turnstile、ハニーポット、Akismet、NGワード、AI判定の違いと、プラグイン別の確認先、必要な問い合わせを止めない設定手順を解説します。

WordPressフォームのスパム対策。原因を分ける、対策を選ぶ、送信を確かめるという3つの手順を示す説明図

WordPressのお問い合わせフォームに、意味のない文字列や同じ広告が何度も届く。対策を入れたのに、日本語の営業メールだけが残る。こうした場合は、届いているメールの種類に合わせて設定を見直しましょう。

最初に使っているフォームの保護機能を確認し、残るスパムに合う対策を追加して、最後に正常な問い合わせが届くか試す。これが基本の順番です。ボットの自動送信、繰り返す宣伝、受け付けたくない営業提案では、向いている対策が違います。

この記事では、7つの対策の役割と限界、Contact Form 7・WPForms Lite・Fluent Forms・Forminatorでの確認先を整理します。自社サービスであるFormArmorについても、利用条件を含めて紹介します。

対策の前に、迷惑メールが届く入口を確認する

受信したメールがすべてフォーム経由とは限りません。まず件名、通知の書式、管理画面の記録などから、どの入口を通ったか確かめます。送信者や件名だけで断定せず、分からない場合はサイトの管理担当者へ確認してください。

届いているもの最初に確認する場所
お問い合わせフォームの通知該当フォームと、そのスパム保護設定
記事へのコメント通知WordPressのコメント・ディスカッション設定
公開メールアドレスへの直接のメールメールサービス側の迷惑メール対策
問い合わせが送信できたのに通知が届かないフォームの保存先、メール送信設定、受信側の迷惑メールフォルダ

コメントへの対策を変更しても、すべてのフォームへ自動的に反映されるわけではありません。プラグインによってはWordPressの禁止用語リストを利用しますが、連携の有無を確認する必要があります。

また、Gmailで通知を振り分けても、サイト上のフォーム送信自体は止まりません。受信後の整理をしたい場合は、Gmailでフォームの営業メールを整理する方法を参照してください。

スパムの特徴から、追加する対策を決める

次に、不要な送信の特徴を見ます。本文に個人情報が含まれる場合は、共有する前に伏せてください。

目立つ特徴検討する対策判断するときの注意
短時間に大量の送信が続くCAPTCHA・ハニーポット・送信頻度の制限回数だけで正当な再送まで止めない
同じ宣伝文句やリンク先が繰り返されるキーワード・ドメイン制限、Akismetなど一般的な語句やURL全体を拒否しない
自然な文章の売り込みが残る受付方針の明記、本文を評価するフィルタ営業と協業・取材の境界を決める

この表は対策を選ぶ目安で、送信者を特定する方法ではありません。自然な日本語でも自動送信はあり、外国語でも正当な問い合わせはあります。言語や見た目だけで一括拒否する設定は避けましょう。

WordPressフォームのスパム対策7選

すべてを一度に追加する必要はありません。現在の設定を確認し、困っている送信に合うものから試します。

対策主な役割導入前に確認すること
1. フォーム標準の保護機能プラグインが備える基本的な不正送信対策対象フォームで有効か、既存設定との重複
2. CAPTCHA自動化された送信への対策対応サービス、キー、サーバー側の検証
3. ハニーポット隠し項目などを利用したボット対策プラグインの対応状況、誤検知の有無
4. Akismet外部サービスによるスパム判定フォームとの連携、利用プラン・条件
5. キーワード・ドメイン制限繰り返す特定の内容への対策対象項目、部分一致、無料版での利用可否
6. 送信頻度の制限短時間の大量リクエストへの対策送信先の特定、共有IPへの影響
7. AIによる本文判定文脈や受付方針に沿った分類外部送信する情報、誤判定時の運用

1. まずフォーム標準の保護機能を確認する

追加プラグインを探す前に、現在のフォームのスパム保護設定を開きます。新しく作ったフォームと、以前から使っているフォームで設定が異なることもあるため、実際に通知が届いているフォームを確認しましょう。

例えばWPFormsには標準のスパム保護があり、公式のスパム対策ガイドで各機能を確認できます。利用できる項目は製品・バージョン・契約によって異なります。

2. TurnstileなどのCAPTCHAを設定する

CAPTCHAは、自動化されたアクセスや送信への対策として検討できます。フォームプラグインが対応するTurnstile、reCAPTCHA、hCaptchaなどから選び、公式手順に沿って接続します。すべてのフォーム製品がすべてのサービスに対応するわけではありません。

表示されているだけで安心せず、対象のドメイン、キー、フォーム側での有効化を確認してください。独自実装の場合はサーバー側でのトークン検証も必要です。Cloudflareのフォーム保護ガイドも参考になります。

CAPTCHAは、事業者が受け付けたい提案内容まで決める仕組みではありません。通過した営業メールが残る場合は、接続状態を確認したうえで、本文や受付方針に合う対策を検討します。

3. ハニーポットを活用する

ハニーポットは、通常の利用者が入力しない隠し項目などを使い、不自然な送信を見分ける方式です。対応するフォームであれば、訪問者に追加の操作を求めずに導入できる場合があります。

回避するボットもいるため、これだけで防ぎ切れるとは限りません。独自に入力欄を隠すより、プラグインが用意する機能を使いましょう。Fluent Formsの対応機能は公式の保護設定ガイドで確認できます。

4. Akismetとの連携を検討する

Akismetは、対応するフォームプラグインと連携してスパム判定に利用できます。WordPressで有効にしただけで、どのフォームにも適用されるとは限らないため、フォーム側の連携設定も確認します。

例えばContact Form 7の公式FAQでは、Akismet、Turnstile、禁止用語リストが紹介されています。サイト用途に合ったAkismetの利用条件も確認してください。

判定後に「送信を拒否する」のか「スパムとして保存する」のかも確認しましょう。Forminatorの公式ガイドでは、この扱いを選べる設定が説明されています。

5. 特定のキーワードやドメインを制限する

同じ宣伝文句やリンク先が繰り返される場合は、対応する禁止リストやフィルタを検討します。ただし、「ご提案」「見積もり」「https」などの広い条件では、受け付けたい相談まで対象になるおそれがあります。

例えば「サイト制作のご提案」を拒否したい場合でも、「サイト制作の見積もりを依頼したい」という顧客からの相談とは分ける必要があります。禁止したい単語を増やす前に、正常な文面にもその語句が含まれないか確認しましょう。

メールアドレスやドメインだけの制限は、送信元を変えられると対応が追いつきません。利用できる機能や一致条件も製品ごとに異なります。

6. 大量送信には送信頻度の制限を検討する

短時間に大量の送信が続く場合は、フォーム側やサーバー・WAF側の回数制限が候補です。導入する場合は、管理担当者と実際の送信先を特定し、通常のアクセス数や再送の頻度を踏まえて条件を決めます。

WordPressのREST APIや共通の送信先を広く遮断すると、別のフォームやサイト機能にも影響するおそれがあります。会社・学校などで同じIPを共有する利用者にも注意が必要です。提供条件はサービスのプランにより異なるため、Cloudflareのレート制限ガイドなど公式情報を確認してください。

7. 本文と受付方針に応じたAI判定を検討する

ボット対策後も不要な売り込みが残るなら、本文を評価するサービスも選択肢です。単語の一致だけでは分けにくい内容を分類する用途がありますが、AIにも誤判定があります。Akismetなど既存のフィルタにも内容を評価する仕組みがあり、AIだけが本文を扱えるわけではありません。

導入前に「広告は不要だが取材は受けたい」「協業の相談は確認したい」など、受付方針を整理しましょう。同時に、外部に送信する項目、保管条件、障害時の動作を確認します。

フォームプラグイン別の設定はどこを見る?

全体設定でサービスへ接続しても、個々のフォームで追加設定が必要な場合があります。ここでは確認の入口をまとめます。画面名や利用できる機能はバージョンによって異なるため、詳細は各記事と公式情報を参照してください。

使用中のプラグイン確認するポイント詳しい手順
Contact Form 7インテグレーション、Akismetの連携、禁止用語リストCF7の営業・スパム対策
WPForms Liteフォームのスパム保護設定、対応するCAPTCHAとの接続WPForms Liteの設定手順
Fluent Forms全体の保護設定と、対象フォームの設定の違いFluent Formsの設定手順
Forminator保護機能と、拒否・保存・通知の扱いForminatorの設定手順

プラグインを変更する前に、使っているフォームの設定を確認すれば、移行作業をせず改善できる場合があります。

設定は一つずつ変え、正常な問い合わせもテストする

対策の評価では、迷惑メールの件数だけでなく、必要な問い合わせを受け付けられるかも確認します。設定前に現在の状態を控え、可能なら検証環境で試してください。

  1. 対象フォーム、現在の保護設定、通知先、保存先を記録する。
  2. 届くスパムの特徴に合わせて、一つの設定を変更する。
  3. 自分で管理する宛先を使い、個人情報を含まないテスト文面を送る。
  4. 送信結果、保存先がある場合はその記録、通知メールの到着を確認する。
  5. 想定と違う場合は、直前の変更を戻して原因を切り分ける。

テスト文面には「商品の利用方法を教えてください」のような通常の質問に加え、実際に受け付ける問い合わせの特徴を入れます。

テスト例確認したいこと
「このページの内容について質問があります」とURLを添えるURLを含む正当な相談まで止めていないか
取材や協業の相談を想定した文面受け付けたい提案と設定が一致するか
外国語での通常の質問外国語の相談を受けるサイトで誤拒否しないか
自分で管理するフリーメールアドレスを使うアドレスの種類だけで拒否していないか

これは設定確認用の例です。文面どおりの判定結果を保証するものではなく、ボット対策の有効性は通常の手動送信テストだけでは判断できません。

「送信エラーが出る」と「送信完了だが通知が届かない」は別の症状です。前者は保護設定や入力検証など、後者は保存記録やメール送受信経路も調べます。CF7での誤判定を疑う場合は、正常な問い合わせがスパム扱いされるときの確認手順も参照してください。

営業メールの受付方針も分けたい場合はFormArmorを検討する

FormArmorは、フォーム本文をAIで判定する当社のサービスです。通常のお問い合わせフォーム向けに、Contact Form 7、WPForms Lite、Fluent Forms無料版、Forminator無料版へ対応しています。対応範囲には制限があり、決済や会員登録などへの利用を想定したものではありません。

広告、取材、協業などの受付方針を選べます。Freeは1アカウント1サイト、月150件まで、カード登録なしで利用でき、自動で有料にはなりません。導入条件はWordPress 7.1以上、PHP 8.2以上、HTTPSです。詳しい対応範囲と設定はWordPressへの導入ガイドを確認してください。

判定には、選択した問い合わせ本文・項目名・受付方針をFormArmor経由でTypeSafe AI Inc.のJevへ送信し、米国で処理します。添付ファイル・パスワード・決済情報は送信対象に含めませんが、判定対象として氏名やメールアドレスを選ぶと、それらも送信されます。導入前に対象項目とプライバシーポリシーを確認してください。

AIの障害時や利用上限時には通常のフォーム処理を継続する設計ですが、別のフィルタが拒否する場合はあります。誤判定や見逃しもあるため、導入後の送信確認と受付方針の見直しを続けましょう。

WordPressフォームのスパム対策でよくある質問

無料で対策できますか?

利用中のフォームにある標準の保護機能や、無料で利用できる外部サービスから検討できます。無料版で使える設定、利用上限、商用サイトでの条件は製品ごとに違います。最初から有料機能を増やすより、現在の設定と残るスパムの特徴を確認しましょう。

WordPressの標準設定だけで防げますか?

フォームプラグイン側の対応も確認する必要があります。コメント用の設定だけで、すべてのお問い合わせフォームを保護できるとは限りません。対象のフォームで保護機能が有効かを確認してください。

Turnstileを入れたのに営業メールが来るのはなぜですか?

まずキーや対象フォームの設定を確認します。接続に問題がなくても、CAPTCHAを通過した送信の内容が、サイトの受付方針に合うとは限りません。詳しくはTurnstile導入後も営業メールが届くときの確認事項を参照してください。

スパム対策は複数入れたほうがよいですか?

役割の異なる対策を組み合わせる方法はあります。ただし、一度に増やすと誤判定の原因が分かりにくくなります。現在の対策を把握し、一つずつ追加して、送信・保存・通知を確かめましょう。

まずは今のフォームの設定と、届く内容を確認しよう

WordPressフォームのスパム対策は、入口と内容を分けるところから始めます。大量の自動送信にはボット対策や回数制限、繰り返す内容にはフィルタ、営業提案の扱いには受付方針に応じた判定を検討します。

  • 迷惑メールが本当にフォーム経由か確認した。
  • 現在の保護設定と、残るスパムの特徴を確認した。
  • 対策を一つずつ変更し、戻せるように記録した。
  • 正常な問い合わせの送信・保存・通知を確認した。
  • 外部サービスへ送る情報と利用条件を確認した。

必要な相談を受け付けながら、確認する手間を減らせる設定を選びましょう。取材や協業の受付も整理したい場合は、営業を断りつつ取材・協業の相談を受け付ける設定例も参考になります。

この記事についてFormArmorの運営が執筆しています。記載の設定や提供条件は更新日現在の情報です。実際の設定前に、ご利用の製品の公式情報もご確認ください。内容の訂正・お問い合わせ

START WITH YOUR FORM

いつものフォームに、
本文のAI判定を。

Contact Form 7/WPForms Liteに追加できます。
まずは1サイト・月150件のFreeプランから。

クレジットカード不要。自動で有料にはなりません。
AIには誤判定があり、不要な投稿を通したり、正当な投稿を拒否したりする場合があります。