WordPressでお問い合わせフォームを作るとき、定番のプラグインが Contact Form 7 です。
しかし実際に設置してみると、
「テスト送信したのにメールが届かない!」
というトラブルに悩む方が非常に多いです。
この記事では、Contact Form 7のメールが届かない原因と解決方法を、わかりやすく整理しました。
同じように困っている方は、ぜひ参考にしてください。
なぜメールが届かないのか?
Contact Form 7から送信されたメールが届かない場合、多くは メールサーバーの仕様や設定ミス が原因です。
主なパターンは次の3つです。
- 送信元アドレスの設定ミス
- サーバー側でのメール拒否(スパム扱い)
- WordPressからのメール送信方法(PHP mail関数)の制限
まず確認したい3つのチェックポイント
以下のチェックリストを確認するだけで、多くの場合は解決できます。
- 「送信先メールアドレス」に誤字はないか?
- Gmailなどフリーメールを使っていないか?
- 迷惑メールフォルダに振り分けられていないか?
これだけで解決するケースも意外と多いです。
解決方法①:送信元アドレスを正しく設定する
特に多いのが「送信元(From)」にフリーメールを使っているケースです。
例:the-affinger@gmail.com
を送信元にすると、サーバーによっては拒否されることがあります。
こうすることで、サーバーからの送信が安定します。
解決方法②:WP Mail SMTPプラグインを導入する
Contact Form 7でメールが届かない原因のひとつに、WordPressの標準のメール送信方法がサーバーに合わない というケースがあります。
専門的に言うと「PHPのmail関数」という仕組みを使って送っているのですが、サーバーによっては拒否されたり、迷惑メール扱いされたりすることがあります。
そんなときに役立つのが、WP Mail SMTP という無料プラグインです。
このプラグインを入れることで、WordPressからのメール送信を「より確実なルート(SMTP)」に切り替えられます。
要は「郵便を普通便で出すのではなく、宅配便で確実に届けるようにする」イメージですね。
WP Mail SMTP の設定手順
- プラグインをインストールして有効化する
- 管理画面の「設定 → WP Mail SMTP」を開く
- 「送信方法」を選び、GmailやSendGridなどの外部メールサービスを連携
- Gmailなら普段使っているGoogleアカウントを利用可能
- SendGridなどは無料枠があり、大量送信にも対応
- 設定後に「テストメールを送信」して届くか確認
この設定をすると、メールがサーバー側でブロックされにくくなり、到達率が大幅に改善 します。
解決方法③:サーバー側の設定を確認する
使っているレンタルサーバー(例:エックスサーバー、ConoHa WING、ロリポップ など)の設定が原因で、メールが届かないこともあります。
特に メールの認証設定(SPF) や 送信制限 が関係しているケースが多いです。
まとめると、
「正しいメールアドレスを使う」+「SPF設定をチェックする」+「送信制限を超えていないか確認する」
この3つをサーバー管理画面で確認すると、メールが届かないトラブルを解決できることが多いです。
解決方法④:それでもダメなときの最終手段
どうしても届かない場合は、以下の方法も検討できます。
- 別プラグインに切り替える(例:WPForms)
- 問い合わせ専用にLINE公式アカウントやチャットを設置する
フォームにこだわらず、問い合わせ手段を複数用意するのも有効です。
まとめ
- メールが届かない原因は「送信元アドレス」「SMTP未設定」「サーバー制限」がほとんど
- まずは送信先アドレス・迷惑メールをチェック
- 安定した送信には 独自ドメインメール+WP Mail SMTP が鉄板
- どうしても解決しない場合は、代替手段の導入も検討する
Contact Form 7は便利ですが、初期設定のままではトラブルが起きやすいプラグインです。
この記事を参考に、確実にメールを受け取れる環境を整えてくださいね。