WordPressのお問い合わせフォームからメールが届かない時の対処法
お客さんが問い合わせしているのにメールが来ない…機会損失になっている可能性も
ホームページのお問い合わせフォームから送信してもメールが届かない。あるいは自動返信メールが届かないとお客様から言われた。
このトラブルを放置していると、問い合わせがあっても気づかずに機会損失が続いている可能性があります。しかも本人が「届いている」と思っているケースも多く、気づきにくいのが厄介なところです。
実際、フォームを設置してから数ヶ月間まったくメールが届いていなかった、という事例は珍しくありません。定期的にテスト送信をして動作確認することが非常に重要です。
メールが届かない主な原因

① WordPressの標準メール送信機能(wp_mail)の問題
WordPressはデフォルトでPHPのmail()関数を使ってメールを送信します。しかし多くのレンタルサーバーでは、スパム対策としてこの方法でのメール送信を制限または禁止しています。
つまり、Contact Form 7などのフォームプラグインを入れてフォームを設置しただけでは、メールが届かないことがあるのです。これはContact Form 7自体のバグではなく、サーバーの仕様が原因です。
XSERVERではphp.iniレベルでmail()関数が制限されていることがあります。サーバーのメール送信ログを確認することで、送信が試みられているか・ブロックされているかを確認できますが、ログの確認方法はサーバーによって異なります。
② 迷惑メールフォルダへの振り分け
メールは送信されているが、受信側の迷惑メールフィルターで振り分けられているケースです。
特に以下の送信元アドレスはスパム判定されやすい傾向があります。
wordpress@yourdomain.com(WordPressのデフォルト送信元)noreply@yourdomain.com- 独自ドメインのメールサーバーが正しく設定されていないアドレス
確認方法:まずGmailなどの迷惑メールフォルダを確認してください。Gmailは迷惑メールの判定精度が高いため、正常なメールが迷惑メール扱いになることがあります。
③ SPF・DKIM・DMARCの未設定
SPF・DKIM・DMARCはメールの正当性を証明するDNS設定です。これらが正しく設定されていないと、受信側のサーバーがメールをスパム判定してブロックすることがあります。
特に2024年以降、Gmailはメール送信者への要件を強化しており、SPF・DKIMが設定されていないドメインからのメールはGmailに届きにくくなっています。
この設定はドメインのDNSレコードを編集する必要があり、誤った設定をするとメールが一切届かなくなるリスクがあります。設定方法はドメインの管理会社やサーバーによって異なるため、各社のサポートを参照してください。
④ Contact Form 7の設定ミス
Contact Form 7のメールタブで以下の設定ミスがよくあります。
- 送信先アドレスが正しく設定されていない
- 送信元アドレスがサーバーのドメインと一致していない
- 「メール(2)」が有効になっておらず自動返信が送られていない
[your-email]タグが送信先に設定されており、セキュリティ警告が出ている
CF7のメールタブを開き、送信先・送信元・件名・本文が正しく設定されているか確認してください。
⑤ メールサーバーの容量不足
受信側のメールボックスの容量が満杯になっている場合、新しいメールが届きません。普段使いのメールアドレスを確認し、不要なメールを削除して容量を確保してください。
最も確実な解決方法:SMTPを使う
WordPressからのメール送信を安定させる最も確実な方法は、SMTP認証を使う方法です。GmailやXSERVERのメールサーバーをSMTPとして使用することで、メールの到達率が大幅に改善されます。
SMTP設定には「WP Mail SMTP」などのプラグインを使用します。設定手順は以下の通りです。
- WP Mail SMTPプラグインをインストール・有効化
- 使用するSMTPサーバーを選択(Gmail・Sendgrid・その他SMTPなど)
- SMTPホスト・ポート・認証情報を入力
- テストメールを送信して動作確認
ただし、設定を誤ると既存のメール送信機能がすべて停止する可能性があります。特にGmailを使う場合は「アプリパスワード」の発行が必要で、Googleアカウントの2段階認証の有効化が前提となります。
XSERVERのSMTPを使う場合の設定値
XSERVERのメールアドレスをSMTPとして使う場合は以下の設定が一般的です。
- SMTPホスト:sv〇〇〇〇.xserver.jp(サーバーによって異なる)
- 暗号化:TLS
- ポート:587
- 認証:有効
- ユーザー名:メールアドレス(@以降も含む)
- パスワード:メールアカウントのパスワード
動作確認の方法
設定後は必ずテスト送信を行ってください。WP Mail SMTPには「テストメール送信」機能があります。また、実際にフォームから送信して、管理者へのメールと自動返信メールの両方が届くか確認してください。
テスト送信先は、普段使っているメールアドレスだけでなく、GmailやYahooメールなど複数のドメインに送ってみることをおすすめします。特定のメールサービスにだけ届かない場合、SPF・DKIM設定の問題である可能性があります。
まとめ:フォームを作っただけでは不十分
お問い合わせフォームからメールが届かない問題は、設置しただけでは気づきにくい落とし穴です。「フォームがあるから大丈夫」と思っていても、実際にはメールが届いていない可能性があります。
定期的にテスト送信して動作確認することを強くおすすめします。設定に不安がある場合や、設定しても解決しない場合は、Revitまでご相談ください。メール設定の診断・設定対応を承っています。