【解決】WPFormsのメールが届かない!WP Mail SMTPで解決した方法

WordPressにお問い合わせフォームプラグインの『WPForms』を入れたのに、いざテスト送信してみたら、管理者宛てに設定していた『Gmail』には通知メールが届いていませんでした。

最初はWPFormsの設定ミスやGmail側の問題を疑いましたが、原因を調べていくうちに『WordPress標準のメール送信方式』に原因がある可能性が高いことが分かりました。

最終的には『WP Mail SMTP』を導入し、『ConoHa WING』で作成した独自ドメインのメールアドレスを利用することで無事解決できました。

さらに設定後にはDMARC未設定の警告も表示され、メール認証について学ぶきっかけにもなりました。

この記事では、実際に私が遭遇した下のことを分かりやすく紹介します。
同じように『送信完了なのにメールが届かない…』と困っている方の参考になれば幸いです。

💡 この記事でわかること
  • WPFormsのメールが届かない現象
  • 原因調査で確認したこと
  • WP Mail SMTPによる解決方法
  • DMARC警告への対応方針
目次

発生した事象

ブログにお問い合わせフォームを設置するため、『WPForms』を導入しました。

フォームの作成自体は非常に簡単で、数分程度でお問い合わせページを公開できました。
通知先メールアドレスには、副業用で利用しているGmailアドレスを設定し、動作確認のためテスト送信を実施しました。

しかし、しばらく待っても管理者宛てのGmailに通知メールが届きません。

迷惑メールフォルダも確認しましたが見当たらず、『送信は成功しているのにメールだけ届かない』という不思議な状況になっていました。

今回の症状をまとめると以下の通りです。

✅ WPFormsのフォーム送信は成功する

✅ エラーメッセージは表示されない

✅ お問い合わせ完了画面も表示される

❌ Gmailに通知メールが届かない

フォーム自体は正常に動いているように見えるため、最初はどこに問題があるのか全く分かりませんでした。

環境

今回メールが届かない問題が発生した時の環境は以下の通りです。

項目内容
サーバ―ConoHa WING
テーマSWELL
お問い合わせフォームWPForms
通知先メールアドレスGmail
SMTP設定未設定

WordPressの初期設定が完了した後、お問い合わせフォームを設置するためにWPFormsを導入しました。

WPFormsは初心者でも簡単にフォームを作成できる便利なプラグインで、私も特に迷うことなくお問い合わせページを作成できました。

通知先メールアドレスには副業で利用しているGmailアドレスを設定し、フォーム送信時に管理者へ通知が届くようにしています。

原因調査で確認したこと

メールが届かないことが分かった後、まずは原因の切り分けから始めました。

フォーム送信時にはエラーが表示されていなかったため『WPFormsが正常に動いていないのか?』『Gmail側で受信できていないのか?』『WordPressの設定に問題があるのか?』を順番に確認していくことにしました。

Gmailの迷惑メールフォルダを確認

最初に確認したのはGmailの迷惑メールフォルダです。
メール自体は送信されていて、迷惑メールとして振り分けられている可能性も考えました。
しかし、迷惑メールフォルダにも通知メールは見当たりませんでした。

WPFormsの通知設定を確認

続いてWPFormsの通知設定を見直しましたが設定ミスは見つかりませんでした。

確認内容
  • 通知機能が有効になっているか
  • 送信先メールアドレスに誤りがないか
  • フォーム保存後に設定が反映されているか

WordPressのメール送信について調査

『そもそもWordPressはどのようにメールを送信しているのだろう?』と疑問に思い調べてみました。

すると、WordPressは標準状態ではPHP Mailという仕組みを利用してメールを送信していることを知りました。

さらに調査を進めると下の情報を見つけました。

確認内容
  • Gmailは迷惑メール対策が厳しい
  • WordPress標準の送信方法ではメールの信頼性が十分に確認できない場合がある
  • SMTPを利用した方が到達率が高い

WP Mail SMTPの導入を検討

WPFormsの設定ミスというよりは、メールの送信方法そのものに原因がある可能性が高いと考えました。
そこで、多くのWordPressサイトで利用されている『WP Mail SMTP』を導入してみることにしました。

図:メールが届かなかった原因と解決後の構成

今回はWPForms自体に問題があったわけではなく、WordPress標準のメール送信方法からSMTP送信へ変更したことで正常にメールを受信できるようになりました。

WP Mail SMTPで解決した方法

原因を調査した結果、WordPress標準のメール送信方法に問題がある可能性が高いと考え、『WP Mail SMTP』を導入することにしました。

WP Mail SMTPをインストール・有効化

まずはWordPressのプラグイン検索から『WP Mail SMTP』をインストールしました。
インストール後、有効化を行います。

WordPress』にログインしたら、左メニューの[プラグイン][プラグインを追加]をクリックして、[プラグインの検索]をします。

WP Mail SMTP』を検索して、[今すぐインストール]した後に[有効化]します。

これで『WP Mail SMTP』のインストール・有効化は完了です。

ConoHa WINGでメールアドレスを作成

次にConoHa WINGのメール機能を利用して、独自ドメインのメールアドレスを作成しました。

ConoHa WINGでのメールアドレス作成は『ConoHa WINGでのメールアドレス作成方法』を参考にメールアドレスを作成してください。

ConoHa WINGのコントロールパネルで[WING]タブ ▶ [メール管理][メール設定][メールアドレス]タブ ▶ [+メールアドレス]ボタンを押下します。

『メールアドレス』『パスワード』を入力後[保存]ボタンを押下します。

ConoHa WINGでのメールアドレス作成が完了です。

WP Mail SMTPへメールアドレスを設定

続いてWP Mail SMTPの設定画面を開きます。

左メニューの[WP Mail SMTP][設定]をクリックして[一般]タブを開き各種設定を行います。

送信元メールアドレス

WordPressからメールを送信する際に使用するメールアドレスです。今回は『レンタルサーバーなどで作成したメールアドレス』を入力します。
※『ConoHa WINGでメールアドレスを作成』で作成したメールアドレス

送信元メールアドレスを強制使用

WordPressや他のプラグインが別の送信元アドレスを利用しようとしても、上記で設定した送信元メールアドレスを強制的に使用します。『ON』を設定します。

送信者名

受信メールに表示される送信者名です。

送信者名を強制使用

他のプラグインが送信者名を変更しても、WP Mail SMTPで設定した名前を使用します。

返信パス

メールが正常に配信できなかった場合に、エラー通知(バウンスメール)を受け取るための設定です。
有効化すると、送信元メールアドレスが返信パスとして設定されます。

メーラー

どのメールサービスを利用して送信するか選択します。
今回は『その他のSMTP』を選択します。

SMTP ホスト

メール送信に利用するSMTPサーバーのアドレスです。今回設定するSMTPホストは『ConoHa WING』でメールアドレスを作成すると確認できます。

ConoHa WINGのコントロールパネルで[WING]タブ ▶ [メール管理][メール設定][メールアドレス]タブ ▶ 作成したメールアドレスのリンクを押下しメールアドレス詳細で確認できます。

[WING]タブ ▶ [サーバー管理][契約情報][メール/FTP/ネームサーバー情報]でも確認できます。

『ConoHa WING』のメールクライアントの設定は『メールクライアントソフトを設定する』を参考にしてください。

暗号化

SMTP通信を暗号化する設定です。ConoHa WINGのメール設定に従い、今回は『SSL』を利用しました。

SMTP ポート

SMTPサーバーと通信するためのポート番号です。ConoHa WINGではSSLを利用する場合、ポート番号『465』を使用します。

TLS 自動化

TLS接続を自動的に有効化する設定です。通常は有効のままで問題ありません。

認証

SMTPサーバーへログイン認証を行うかどうかの設定です。ほとんどの場合は『有効化』にするので今回も『有効化』にします。

SMTP ユーザー名

SMTP認証に使用するユーザー名です。
『ConoHa WINGでメールアドレスを作成』で作成したメールアドレスを設定します。

SMTP パスワード

SMTP認証に使用するパスワードです。
『ConoHa WINGでメールアドレスを作成』で設定したパスワードを設定します。

テストメールを送信

設定完了後、WP Mail SMTPのテストメール機能を利用してメール送信を試しました。

左メニューの[WP Mail SMTP][ツール]をクリックして[メールテスト]タブを開きます。
[メールを送信]をクリックして、テストメールを送信します。

結果は無事成功しGmailにも正常にメールが届くことを確認できました。

DMARCの推奨設定で警告が出ていたので次章で説明します。

WP Mail SMTPで表示されたDMARC警告

WP Mail SMTPの設定が完了し、テストメールを送信したところ、無事にGmailで受信できることを確認できました。

これで問題は解決したと思っていたのですが、WP Mail SMTPの診断結果に以下の警告が表示されていました。

英語で表示されていたこともあり、最初は『まだ設定が間違っているのでは?』と少し焦りました。

しかし調べてみると、この警告はメール送信エラーではなく、メール認証をより強化するための推奨設定であることが分かりました。

DMARCとは?

DMARC(Domain-based Message Authentication, Reporting and Conformance)は、メールのなりすまし対策を行うための仕組みです。

DMARCを設定することで、第三者によるなりすましメール対策やメールの信頼性向上が期待できます。

ConoHa WINGでDMARCを設定

せっかくなので、この機会にConoHa WINGのDNS設定からDMARCレコードを追加してみました。

[WING]タブ ▶ [DNS][ドメインリスト] の対象のドメインを展開し編集マークを押下します。
[]ボタンを押下して新しいレコードを追加します。

項目
タイプTXT
名称_dmarc
TTLv=DMARC1; p=none;
3600

警告が消えた

DMARC設定後に再度WP Mail SMTPでテストメールを送付すると、先ほどまで表示されていた警告が消えていました。

まとめ

今回は、WPFormsで作成したお問い合わせフォームの通知メールがGmailに届かず、WP Mail SMTPを利用して解決した体験を紹介しました。

正直なところ、お問い合わせフォームを設置すれば自動的にメールが届くものだと思っていたため、最初は何が原因なのか全く分かりませんでした。

もしこの記事を読んでいる方が『WPFormsの送信完了画面は出るのにメールが届かない』
という状況で困っているのであれば、まずは『WP Mail SMTP』によるSMTP設定を確認してみてください。
私と同じように、意外とあっさり解決できるかもしれません。

目次