「WordPressでお問い合わせフォームを作ったのに、通知メールが届かない」
「テスト送信は成功するのに、本番だけ迷惑メールに入る」
WPForms や Contact Form 7 を使っている人に、特に多い悩みです。
この原因、プラグインの不具合や文面ではなく、
SPF・DKIM・DMARCという“メール認証設定”がズレている
ケースがほとんどです。
しかもややこしいのが、
・SPFはPASS
・DKIMもPASS
なのに
👉 DMARCだけ失敗して、フォーム通知が迷惑メールになる
というパターン。
この記事では、
「WordPressフォーム通知が届かない原因を自分で切り分けられる」
ことをゴールにして、
・SPF / DKIM / DMARC の役割と違い
・WordPressフォーム通知で失敗しやすいFrom設定
・「全部PASSなのに届かない」典型パターン
・初心者でも事故らない鉄板設計
を、専門知識なしでも分かるように説明します。
まずは30秒で理解:フォーム通知に関係する3つの認証
SPF(Sender Policy Framework)
=「このドメインのメールは、ここから送りますよ」という宣言
例え:
👉 この会社の手紙は、この郵便局から出します
WordPressの場合、
実際の送信元(サーバーやSMTP)が正しいかをチェックされます。
DKIM(DomainKeys Identified Mail)
=「このメールは、途中で改ざんされていません」という電子署名
例え:
👉 封筒に貼られた公式の封印シール
SMTPや外部メールサービスを使うときに必須です。
DMARC(Domain-based Message Authentication, Reporting & Conformance)
=「SPF/DKIMの結果をどう扱うか」を決める最終ルール
例え:
👉 身分証チェックの最終判定マニュアル
WordPressフォーム通知が迷惑メールになる最大の原因が、これです。
WordPressフォーム通知が落ちる本当の理由
DMARCは、次の2点を同時に見ています。
- SPF または DKIM が PASS している
- PASSしたドメインが From(差出人)と一致している
これを
整合(アライメント) と呼びます。
超重要:WordPressは「Fromを偽りやすい」
フォームプラグインでよくある設定👇
From:ユーザーが入力したメールアドレス
(例:yamada@gmail.com)
でも実際の送信元は👇
・WordPressサーバー
・SMTPサービス(SendGrid / Mailgun など)
👉 Fromと実際の送信元が違う=DMARC失敗
これが
「SPF/DKIMは通っているのに、迷惑メールになる」
正体です。
用語ミニ解説:From / Return-Path / d=
From(見た目の差出人)
受信画面に表示される差出人。
初心者が一番触りがちな場所。
Return-Path(実際の返送先)
エラー時に戻る、本当の送信元。
SPFは主にここを見ます。
d=(DKIM署名ドメイン)
DKIMで署名したドメイン。
ヘッダーには
d=example.com
のように表示されます。
典型的な失敗パターン(WordPressあるある)
・From:yahoo / gmail など外部アドレス
・送信:自分のサーバー or SMTP
・DMARC:有効(p=noneでも)
👉 ほぼ確実に迷惑メール行き
初心者でも事故らない鉄板設計(重要)
WordPressフォーム通知は、これでOK👇
・From:自分のドメインの固定アドレス
(例:no-reply@yourdomain.com)
・Reply-To:フォーム入力者のメール
・送信方法:SMTP or APIで統一
「送信者をFromにしない」
これだけで成功率が激増します。
まずはここを確認:10分チェックリスト
・Gmailなどで「メッセージのソース」を開く
・spf=pass
・dkim=pass
・dmarc=pass
・Fromが自ドメイン
・SPFレコードが1本だけ
まとめ
・WordPressフォーム通知が届かない原因はDMARCが9割
・SPF/DKIMは「通る」だけでは足りない
・Fromと送信元の一致が最重要
・From固定+Reply-To運用が最短ルート
この記事は、以下のまとめ記事で全体像を解説しています。
▶ メールが迷惑メールに入る理由と対策【完全まとめ】

▶ メールが送れないときのチェックリスト【完全まとめ】STEP1〜3

コメント