目次
WordPressでお問い合わせフォームを作成している時、「メールが届かない!」「なぜか迷惑メールになってしまう…」という経験がある方は多いと思います。
自分もそんなトラブルを経験した一人です。
今回は自身の経験の中で、起こった事例やその対策を共有していきたいと思います。
※お問い合わせフォームの作成にはプラグインの「Contact Form 7」を使用していますが、他のプラグインでも参考になる内容があると思うので、ぜひ参考にしていただければうれしいです。
メールが迷惑メールボックスに入ってしまう。
お問い合わせフォームからの自動返信メールや通知メールが、迷惑メール扱いとなってしまうことは珍しくありません。受信側で「迷惑メールではない」と報告して貰えば、解決する場合もありますし、受信メールサーバーによって挙動が異なるため、環境依存だと言ったらそこまでなのですが、あまりスマートな対応とは言えません。
とりあえず、気持ちを落ち着けてまずは原因の特定から始めましょう!
サーバーはどこかを確認する
経験上、さくらサーバーを使用している場合、特に設定をしないと、迷惑メール行きになるケースが多いです。
この場合は、プラグイン「WP Mail SMTP」を使用がおすすめです。このプラグインがなにかというと、単純に説明すれば、私たちが普段使っているメールをそのままWordPressでも使えるようにするものです。
設定に必要な情報はメールアドレス、パスワード、メールサーバーのIPアドレスやホスト名です。
(Gmailを使用する方法もありますが、仕様変更やパスワード変更で連携が切れることがあるため、自社管理しているGmailやWebサイト以外ではあまりおすすめできません。)
ドメイン、IPアドレスがブラックリスト入りしていないか?
メールの不通や迷惑メールにいく場合のほとんど「WP Mail SMTP」を使用すれば解決するのですが、それでも迷惑メールに行ってしまう場合があります。
それはドメインやサーバーのIPアドレスが「ブラックリスト」に登録されている場合です。
ブラックリストとは?
スパムメールや悪質な通信を防ぐために、信頼できないと判断されたIPアドレスやドメインをリスト化したものです。メールサーバーはこのリストを参照して、受信するか拒否するかを判断します。
レンタルサーバーで共有サーバーを使用している場合など、同じIPアドレスを大勢で使用している状態となります。もし、その中のひとりがスパムメール等を大量に送っていたりする場合、そのIPアドレス自体がブラックリスト入りしてしまうというわけです。
有名どころのブラックリスト登録団体
・Spamhaus
・Invaluement
・MXToolBox
どの団体に登録されているかで、「迷惑メールになるか」、「完全にメール自体が送信できなくなるか」変わってくるようでした。また、受信側のメールサーバーによっても変わるみたいなので、ブラックリストに乗った時点でかなりめんどくさいことになることが予想されます。
対応策としては、下記が考えられます。
・レンタルサーバーに連絡(サーバー会社によっては解除申請をしてくれる)
・WP mail SMTPでGmail連携にする
・サーバーを変更する、または専用サーバーに切り替える(専用サーバーでは固有のIPアドレスが付与されるため、他ユーザーの影響を受けにくい)
メール本文に特殊文字が使用されていないか
「WP Mail SMTP」でテスト送信は正常でも、フォーム送信では迷惑メールに入る場合があります。
この場合はメール本文を確認しましょう。
署名部分に装飾として、
「。.。・.。*゚+。。.。・.。*゚+。。.。・.。*゚+。。.。・.。*゚+。。*゚+ 」
こういうのが入ってたりしませんか?
意外にもこれが迷惑メールフィルタにひっかかってしまうことがあります。
メールが迷惑メール扱いになる場合は、タイトル・本文を一旦シンプルにしてからテスト送信してみるのもおすすめです。
メールが送信・受信されない
reCAPTCHAが悪さをしていないか
Contact Form 7を使用していて、設定に問題がないのに
「メッセージの送信に失敗しました。後でまたお試しください。」
と表示される場合、reCAPTCHAが原因である可能性があります。
Contact Form7ではエラーメッセージの枠色で原因を推測できます。
赤枠:サーバーエラー
黄色枠:バリデーションエラー(構文ミスなど)
オレンジ枠:スパム疑い(reCAPTCHAによるブロックが多い)
オレンジの場合は一度reCAPTCHAを外して送信テストを行ってみるのが早いです。
自分の環境だけ弾かれている場合もあるので、他の人や端末でも送信できるか試してみるのもよいです。※reCAPTCHAが古い場合もエラーの原因になるそうです。
サーバーがメール送信機能を有していない。
サーバーによっては、そもそもメール送信機能がなかったり、設定しないと使えないことがあります。
特に安価なサーバーやVPSサーバーでは要注意です。
こういった場合は、潔く「WP Mail SMTP」を使用しましょう。
ユーザー名によっては受信されないときがある
※検証不足なのでこういう事象もあった程度に考えていただけると!
Contact From7ではデフォルトの送信元メールアドレス名が「wordpress@ドメイン名」になります。
この「wordpress」の部分を変更したところ、届かなくなった事例がありました。(Xserver環境)
事象としては稀ではあるので検証不足ではありますが、もしかしたら、サーバー側で「wordpress@」のメールアドレスは優先して通す設定があったりするのかもしれません。
この場合でも「WP Mail SMTP」を設定することで解決です。
まとめ
メール関連のトラブルは本当に厄介ですよね。
基本的には「WP Mail SMTP」で解決できることが多いのですが、原因を把握していないと、いざという時に適切な対処ができなかったり、説明できずに困ることもあります。
そんなときに本記事が検証する手助けになってくれたら幸いです。