お問い合わせフォームのテストをしていて、自動返信のメールは届くのに、管理者宛のメールだけが Gmail に届かないという現象が起こりました。
迷惑メールのフォルダにも、ゴミ箱にもありません。
原因は MW WP Form の「管理者宛メール設定」の送信元が {your-email}(問い合わせた人のアドレス)になっていたことでした。
何が起きたか
お客様からWordPress サイトの PHP のバージョンアップを依頼されたときのことです。
PHP とプラグインのバージョンを上げたあと、お問い合わせフォームの動作確認をしました。
フォームは MW WP Form で作られていて、送信すると次の2通が出ます。
- 問い合わせた人への自動返信
- サイトの管理者(私のお客様)への通知
お客様の受信箱は私からは見えないので、管理者宛の送信先を、一時的に自分の Gmail に変えてテストしました。フォームのメールアドレス欄にも、自分の Gmail を入れています。
結果は以下の通りです。
| メール | 送信先 | 届いたか |
|---|---|---|
| 自動返信 | Gmail | 届いた |
| 管理者宛 | Gmail | 届かない |
| 管理者宛 | Gmail 以外のメール | 届いた(受信トレイ) |
同じフォームから、同じタイミングで出たメールです。
それなのに、Gmail 宛の管理者宛メールだけが届きません。
実は、以前に別のサイトでも「Gmail だけ届かない」ことがあった気がしています。そのときは最終的な受信先が Gmail ではなかったので、お客様のアドレスで届くことを確かめて完了となりました。はっきりとは覚えていないのですが、今思うと同じ原因だったのかもしれません。
最初は Gmail の設定を疑った
最初に疑ったのは受け取る側の Gmail でした。
- ブロックしているアドレス
- フィルタ
- 迷惑メール
- ゴミ箱
どこを見ても、管理者宛のメールはありません。Gmail の検索で in:anywhere を付けて件名を探しても、出てきませんでした。
ここで考え方を変えました。
同じフォームから出る2通のうち、片方だけが届かない。だとすれば、受け取る側ではなく、2通の送り方の違い に原因があるのではないか…?
原因は管理者宛メールの送信元
MW WP Form の設定画面で、2通の設定を見比べてみました。
| 項目 | 自動返信メール | 管理者宛メール |
|---|---|---|
| 送信元(E-mailアドレス) | サイトのドメインのアドレス | {your-email} |
| 送信者 | サイトの名前 | {your-name} |
| Reply-to | サイトのドメインのアドレス | {your-email} |
{your-email} はフォームのメールアドレス欄に入力された値に置き換わります。つまり管理者宛メールは 問い合わせた人のアドレスを送信元にして 送られていました。

返信ボタンを押すだけで問い合わせた人に返せるように、という考え方だと思います。返信のしやすさだけを考えると、自然に思いつく設定です。
なぜ Gmail に届かないのか
問い合わせた人が Gmail を使っていると、管理者宛メールは次のようなメールになります。
- 送信元:
〜@gmail.com - 実際に送っているのは:サイトを置いているレンタルサーバー
Gmail から見ると、「gmail.com を名乗っているのに、Gmail 以外のサーバーから届いたメール」です。これはなりすましメールと同じ形です。
Google は「メール送信者のガイドライン」で、すべての送信者に、From ヘッダーをなりすまさないことを求めています。
要件を満たさないメールは、迷惑メールになるか、SMTP エラー 5.7.26 で拒否されることがあるとも書かれています。この要件は、2024年2月1日から適用されているようです。
迷惑メールにも入っていなかったので、今回は受け取りの時点で拒否されたのだと考えています。
ただ、エラーのメールは見当たらず、拒否されたことは確かめられていません。
エラーの返送先によっては、ふだん見ていないメールボックスに届いている可能性もあります。
gmail.com の DMARC は「p=none」だった
念のため、gmail.com が、なりすましメールをどう扱ってほしいと宣言しているか(DMARC のポリシー)も調べました。
dig +short TXT _dmarc.gmail.com"v=DMARC1; p=none; sp=quarantine; rua=mailto:mailauth-reports@google.com"p=none は「認証に失敗しても、受け取る側の判断に任せる」という意味です(2026年10月に確認)。
つまり、gmail.com のドメインとして「拒否して」と宣言しているわけではありません。
今回届かなかったのは受け取る側の Gmail が、自分の判断で受け取らなかったのだと思います。
Gmail 以外のメールには届いたのも受け取る側の判断が違ったからだと考えると、話が合います。
同じ送信元でも届くかどうかは受け取る側しだい、ということです。
プラグインの画面にも書いてあった
あらためて MW WP Form の設定画面を見ると、送信元の欄の下に、こう書かれていました。
任意。サーバーと同じドメインのメールアドレスを指定するべきです。

答えは最初から画面に書いてあったわけです。
直し方
管理者宛メール設定の、送信元だけを変えます。
| 項目 | 直す前 | 直したあと |
|---|---|---|
| 送信元(E-mailアドレス) | {your-email} | サイトのドメインのアドレス(自動返信と同じもの) |
| 送信者 | {your-name} | {your-name}(そのまま) |
| Reply-to | {your-email} | {your-email}(そのまま) |

送信者と Reply-to はそのままにしておくのがポイントです。
- 受信箱では今までどおり問い合わせた人の名前で表示される
- 「返信」を押すと、Reply-to の問い合わせた人のアドレスに返信できる
返信のしやすさは送信元ではなく Reply-to で守れます。
直したあとにもう一度テストすると、Gmail にも管理者宛のメールが届きました!
返信ボタンを押すと、宛先は問い合わせた人のアドレスになっていました。
MW WP Form は開発が止まっている
今回の件で MW WP Form の公式サイトを見たところ、開発は脆弱性への対応を除いて止まっている、との案内がありました。ほかのプラグインへの乗り換えも勧められています。
wordpress.org のページでも、動作確認済みの WordPress は 6.4.13 までになっています。
参考:MW WP Form – WordPress プラグイン
実際に、最新版の 5.1.8 を PHP 8.4 で動かすと、次の Deprecated が1件出ました。
PHP Deprecated: MW_WP_Form_Abstract_Validation_Rule::__construct(): Implicitly marking parameter $Data as nullable is deprecated, the explicit nullable type must be used instead in .../mw-wp-form/classes/abstract/class.validation-rule.php on line 30PHP 8.4 で古い扱いになった書き方へのお知らせで、フォームの動作には影響ありませんでした。
ただ、今後 PHP や WordPress を上げていくと、こうした小さなずれが増えていくはずです。今回は更新で対応しましたが、いずれはほかのフォームへの乗り換えも考えたほうがよさそうです。
判断の基準
- 自動返信は届くのに、管理者宛だけ届かないときは、受け取る側より先に「2通の送信元の違い」を見る
- 送信元はサイトのドメインのアドレスにする。問い合わせた人のアドレスは Reply-to に入れる
- テストは Gmail を含む複数の宛先で行う。1つの宛先で届いても安心しない
- MW WP Form を使っているなら、乗り換えも視野に入れておく
管理者宛メールの送信元が {your-email} のままで、通知が届かなくなっているサイトはほかにもあると思います。気づかないまま、お問い合わせを取りこぼしているかもしれません。
自分のサイトのフォームも、一度 Gmail 宛で試してみてください。
設定の場所が分からない、乗り換えを相談したい、という場合は、リクワス(rcwas.com)からお気軽にご相談ください。

