フォームでは送信完了になるのに、メールが届かない。そんなときは、プラグインやDNSを次々に変更する前に、どの段階で止まっているかを調べます。
この記事を見るべき方
- 管理者への通知や、自動返信が届かず困っている方
- メール設定やDNSの変更後から不達が起きた方

フォームでは送信完了になるのに、メールが届かない。そんなときは、プラグインやDNSを次々に変更する前に、どの段階で止まっているかを調べます。
先に押さえたい要点
WordPressのお問い合わせフォームに完了メッセージが表示されても、受信箱に届いているとは限りません。フォームからメール送信処理が呼ばれ、その後、送信サーバーや受信側の判定を経て届けられるためです。
WordPress公式も、wp_mail()の成功は相手への到達を保証しないと説明しています。wp_mail()の公式リファレンス
まず「すべて届かない」「特定の宛先だけ届かない」「自動返信だけ届かない」を分けましょう。やみくもにプラグインを追加するより、確認する場所を絞れます。

テストには自分で管理するアドレスを使い、実在の顧客情報は入力しないでください。送信した日時と宛先を残すと、管理者や配信事業者がログを探しやすくなります。
入力チェック、フォーム設定、画面上のエラーを確認します。キャッシュや追加機能の影響もあり得ますが、いきなり本番の機能を止めず、バックアップや検証環境を用意して調べます。
利用しているメール送信方式の設定、認証情報、送信制限を確認します。SMTPやメール配信APIを使う場合も、設定しただけで完了ではありません。管理者通知と自動返信を実際に送って確認します。
受信側の隔離や迷惑メール判定、送信ドメインの認証、エラーメールなどを確認します。配信サービスが返す「受付」と「配達」の記録を区別してください。配達後に迷惑メールフォルダへ入る場合もあります。
フォームに入力された利用者のメールアドレスを、そのまま差出人(From)にしている場合は、設定を見直します。自社が送信権限を持つアドレスをFromにし、利用者への返信先としてReply-Toを設定する方法を検討してください。
たとえば、通知メールの差出人は自社ドメインのアドレスに揃え、返信ボタンを押したときだけ入力者へ返信できる形です。実際に指定できるアドレスは、利用中の送信サービスで確認します。
Webサイトとメールのドメインが違うこと自体が、必ず不達の原因になるわけではありません。確認すべきなのは、実際の送信元が認証され、その設定と差出人の関係が正しいかです。
SPFは送信を許可する仕組み、DKIMは電子署名による検証、DMARCは差出人ドメインとの整合性などを扱います。設定すること自体が不達の原因なのではなく、利用している送信サービスとDNSの設定が合っているかを確認します。
Gmailの公式ガイドラインでは、すべての送信者と大量送信者で要件が分かれています。自社の送信方法・送信量に対応する要件と、利用中の配信サービスの案内を確認してください。Gmailのメール送信者ガイドライン
別のサービス向けのDNS設定を流用したり、既存の値を確認せず書き換えたりしないでください。DNSの管理先が不明なら、先にサーバー・ドメインの管理台帳を整理しましょう。
メール通知だけに頼らず、フォームの受付記録をアクセス制限のある場所に保存し、通知失敗を確認できる仕組みを検討します。個人情報を保存する場合は、閲覧できる人や保存期間も決めます。
また、フォームを変更したときだけでなく、メールサービスやDNSの変更後にもテストします。送信先、送信日時、管理者通知、自動返信、受付記録を一組で確認すると、調査の手戻りを減らせます。
サイトURL、使っているフォーム、発生した日時、管理者通知と自動返信のどちらに問題があるかをお知らせください。パスワードや認証キーを問い合わせ本文に書く必要はありません。
スターウィーブでは、WordPressの保守・運用支援の一環として、状況と担当範囲を確認したうえで調査方法を整理します。サイト全体の見直しが必要かは、原因を確認してから一緒に考えます。