【完全保存版】WordPressでお問い合わせメールが届かない時の原因と解決法|Xserver+WP Mail SMTP設定実録

WordPress体験談

作成:2025年10月5日

こんにちは、ミータです。

WordPressで「Contact Form 7のメールが届かない」「送信できたのに受信できない」と悩んでいませんか?

この記事では、私が実際にXserver環境で遭遇したメール不達トラブルを、発生から完全解決までの全手順として解説します。

WP Mail SMTPの設定方法から、到達率を上げるDMARC設定まで、初心者でも確実に再現できる内容です。


1. トラブル発生の状況

お問い合わせフォームは送信できるのに届かない?

最初に起きたのは、「フォーム送信はできるがメールが届かない」状態でした。

Contact Form 7でテスト送信すると、画面上には

「ありがとうございます。メッセージは送信されました。」

と黄緑色の枠で表示されるのに、

運営者にGmailの受信トレイにはメールが来ない…。

この時点で、

  • 送信処理自体は成功
  • しかしメールがどこかで「迷子」になっている
    という典型的なパターンでした。

2. 原因を切り分けるステップ

Step 1:迷惑メールフォルダの確認

まず、Gmail側で「迷惑メール」フォルダを確認します。

「noreply@ドメイン名」や「WordPress」からのメールが届いていないかをチェック。

結果:迷惑メールにも無し。

→ WordPressからメールは送られていない可能性が高い。

Step 2:PHPメール関数(wp_mail)の限界

WordPressは内部で「PHP mail()関数」を使ってメールを送信します。

しかし、これがXserverやGmailでブロックされるケースが増えています。

送信元が example.com でない、または認証が弱いと
「不正な送信者」と判定され、到達しません。


3. 解決策:WP Mail SMTPプラグインの導入

WP Mail SMTPとは?

WordPressのメール送信をSMTP(認証付きメール送信)に切り替えるプラグインです。

これにより、「確実に認証されたサーバー経由で送信」できるようになります。


Step 1:プラグインのインストール

  1. WordPress管理画面 → プラグイン → 新規追加
  2. 検索欄に「WP Mail SMTP」と入力
  3. インストール → 有効化

有効化すると、セットアップウィザードが開きます。


Step 2:「その他のSMTP」を選択

ウィザードでは「SendLayer」「Gmail」などの選択肢がありますが、
今回は自分のサーバー(Xserver)のメール機能を使いたいので、
リストの一番下にある 「Other SMTP」 を選びます。


Step 3:SMTP設定の入力(Xserverの場合)

項目設定内容
メーラーOther SMTP
SMTPホストsv541422.xserver.jp(※契約サーバー番号に置き換え)
暗号化TLS
ポート587
認証有効
ユーザー名noreply@sicom-blog.com
パスワードメールアカウント作成時のパスワード
送信元メールアドレスnoreply@sicom-blog.com
送信元アドレスを強制使用チェック✅

Step 4:テスト送信

  1. 「WP Mail SMTP → ツール → メールテスト」へ
  2. Gmailアドレスを入力して送信テスト
  3. 結果を確認

結果:
「送信に失敗しました」と表示。


4. エラーの原因をさらに追う

「接続を拒否されました」というメッセージ

XserverとWordPressが同じサーバー上にある場合、

自分自身のSMTPサーバーへ「外部接続」しようとして失敗することがあります。

つまり、

“自分の家の中の郵便ポストに、外から投函しようとして拒否された”

ような状態です。


5. 最終解決:localhostを使った内部SMTP接続

設定変更内容

項目設定内容
SMTPホストlocalhost
ポート587
暗号化なし(None)
認証有効
ユーザー名noreply@sicom-blog.com
パスワード(メールアカウントのパスワード)

結果

テスト送信 → 成功!

運営者のGmail受信トレイにも、即座に「お問い合わせ通知」メールが届きました。

この瞬間、「フォーム送信は成功しているのに届かない」問題が完全に解決しました。


6. 到達率をさらに上げる設定(SPF/DKIM/DMARC)

SMTPで送れるようになっても、迷惑メールに入る可能性があります。
そこで「メール認証三兄弟」と呼ばれる3つの仕組みを整えます。


SPF設定

送信元ドメインが正規サーバーかどうかを証明するもの。

Xserverでは自動で有効になっています。


DKIM設定

メール本文に電子署名を付与する仕組み。

こちらもXserverはデフォルト有効。


DMARC設定(重要)

SPF+DKIMを統合的に評価して「なりすましを防ぐ」仕組みです。

設定方法

  1. Xserverサーバーパネル → 対象ドメイン → 「DNSレコード設定」
  2. 「TXTレコードを追加」ボタン
  3. 以下を入力

ホスト名: _dmarc
種別: TXT
内容: v=DMARC1; p=none; rua=mailto:postmaster@sicom-blog.com

反映まで数時間かかりますが、これでGmailなどから「dmarc=pass」と判定されるようになります。


7. テスト送信の最終チェック

メールヘッダーの確認方法(Gmail)

  1. 受信メール右上「︙」→「メッセージのソースを表示」
  2. 以下を確認:

spf=pass dkim=pass dmarc=pass

3つすべて「pass」なら完全にOK。
到達率はほぼ100%になります。


8. よくあるエラーと対処まとめ

症状原因対処法
送信完了と出るのに届かないPHPメール関数で弾かれているWP Mail SMTPでSMTP送信に変更
エラー「SMTP connect() failed」外部SMTP接続拒否ホストを localhost に変更
届くが迷惑メールに入る認証不足SPF/DKIM/DMARC設定を追加
特定アドレスに届かない受信側がブロックフリーメールより独自ドメイン推奨

9. まとめ:メールが届く=信頼の証

お問い合わせフォームは、サイト訪問者との大事な接点です。
「送信できたけど届かない」は、実は多くの初心者がつまずくポイント。

でも、

  • WP Mail SMTP の導入
  • localhost設定
  • DMARCの追加

この3ステップで確実に解決できます。


最後に

私自身、最初はメールが1通も届かず半日格闘しましたが、
一度仕組みを理解してしまえば簡単です。

このブログでは、同じようにWordPressをゼロから整えていく過程を、
「実録+解説」で順に記録していきます。

次回は、

【初心者向け】WordPress初期設定の完全ガイド|最小限のプラグイン構成で安定運用を始めよう

です。

タイトルとURLをコピーしました