【Contact Form 7のメールが届かない】送信元アドレスを変える前に確認する4つのこと

この記事の結論

Contact Form 7でメールが届かないとき、最初にFrom欄へ問い合わせた人のメールアドレスを入れるのは避けます。フォーム入力者のアドレスはReply-Toへ、Fromにはサイトで管理しているドメインのメールアドレスを置くのが確認の出発点です。ただし、Fromだけを直しても、宛先の指定、メールタグの名前、サーバー側の送信処理のどこかで止まっていれば届きません。

Contact Form 7の送信元と宛先を確認する記事のアイキャッチ

Contact Form 7でメールが届かないとき、最初にFrom欄へ問い合わせた人のメールアドレスを入れるのは避けます。フォーム入力者のアドレスはReply-Toへ、Fromにはサイトで管理しているドメインのメールアドレスを置くのが確認の出発点です。ただし、Fromだけを直しても、宛先の指定、メールタグの名前、サーバー側の送信処理のどこかで止まっていれば届きません。

この記事は、送信ボタンのあとに表示される完了メッセージは出るのに、管理者宛ての問い合わせメールが見当たらない人向けです。メール送信が成功した表示だけでは、最終的に受信箱へ届いたかは判断できません。設定を一度に変えず、メールタブの値とテスト結果を順に残します。

1. まず「メール」タブの宛先とメールタグを対応させる

Contact Form 7のフォーム編集画面には、フォーム項目を定義する「フォーム」タブと、実際に送るメールを設定する「メール」タブがあります。メールタブに書く`[your-email]`のような値は、フォーム側にあるメールタグと同じ名前でなければ使えません。

最初に確認するのは、次の三つです。

  1. 宛先(To)が、実際に受信したい管理者アドレスになっているか
  2. 本文に入れたメールタグが、フォーム側にある名前と一致しているか
  3. 自動返信用の「メール (2)」を有効にしているなら、宛先と本文を管理者通知と取り違えていないか

メールタグを追加・変更した直後は、見た目だけで正しいと判断せず、フォームから短いテストを送ります。Contact Form 7公式の「メール設定」でも、メールタブで正しいメールボックス形式を使うこと、フォームで定義したメールタグを本文などで使うことが案内されています。設定画面の警告が出ている場合は、Fromを先に変えるより、その警告の対象を直します。

2. Fromは自サイトのドメイン、返信先はReply-Toで分ける

問い合わせフォームには、送信者が入力したメールアドレスがあります。これをFromへそのまま入れると、サイトのサーバーが他人のドメインを名乗って送ったように見え、受信側の認証で扱いづらくなることがあります。

メールタブでは、次のように役割を分けます。

項目 入れるもの 目的
To サイト管理者の受信アドレス 問い合わせを受け取る
From 自サイトで管理する独自ドメインのアドレス 送信元をサイト側で管理する
Reply-To フォーム入力者のメールタグ 受け取ったメールから返信できるようにする

Fromに使うメールアドレスは、見た目だけ似た文字列を作るのではなく、利用中のサーバーやメールサービスで送信を許可しているものを使います。独自ドメインを移した直後でメール受信まで不安定な場合は、先に独自ドメインのメールが届かない前にでMXレコードの移行状況を確認してください。

3. 完了メッセージではなく、別の受信先でテストする

フォーム送信後に「メッセージは送信されました」と表示されても、受信箱まで届くことを保証する表示ではありません。設定を変えたら、自分が管理できる別の受信先へ送って結果を見ます。

テストでは、次を一組として残します。

  1. 送信した時刻と、使った送信元アドレス
  2. 管理者通知が届いたか、迷惑メールフォルダに入ったか
  3. 管理者通知のFromとReply-Toが意図どおりか
  4. 自動返信を有効にしている場合、送信者側にも届いたか

同じメールサービス同士だけで試すと、外部の受信側で起きる問題に気付きにくくなります。個人情報を含む実際の問い合わせ内容ではなく、テスト用の短い内容を使い、別のメールサービスを一つ使って確認します。

4. Fromを何度も変える前に、送信経路の問題を切り分ける

To、From、Reply-Toとフォームのメールタグが合っているのに届かない場合は、フォーム固有の設定ではなく、WordPressから外へ出るメール送信の経路を確認する段階です。送信プラグインやサーバーのメールログを使っている場合は、その送信時刻に受付記録があるかを確認します。

ただし、送信ログに記録があることと、相手の受信箱まで届いたことは別です。宛先の入力誤り、受信者側の迷惑メール判定、メールボックス容量などは、送信側だけでは断定できません。設定変更のたびにテストを一通送り、どの変更で結果が変わったかを残してください。

フォームそのものではなく、WordPressの通知メールや管理者メールも届かない場合は、WordPressの問い合わせメールが届かないときは、送信元アドレスで決まるを先に確認します。

まとめ

Contact Form 7のメール不達は、From欄だけを変えて終わる問題ではありません。フォームのメールタグ、宛先、サイト側で管理するFrom、入力者へ返すReply-Toを分けると、どこを直すべきかが見えやすくなります。

まず設定画面の警告とメールタグを確認し、次に別の受信先でテストします。それでも届かないときに、送信サービスやサーバー側の経路を確認する順番なら、設定を何度も書き換えて原因を見失いにくくなります。

近いカテゴリ