Word Pressでフォームを設置したけど送信したメールが届かない…。
SMTP設定って?
Word Pressで設置したお問い合わせフォームからメールが届かない!と困っていませんか?
レンタルサーバーからメールを送信すると迷惑メールになる可能性が高くなります。これは、Word pressのテーマや設置したフォームの送信先などに設定しているドメインやURLと、レンタルサーバーから送信する際のURLが異なっていることが原因のひとつと考えられます。
Word Pressでメールを送信するにはSMTP設定をする必要があります。これは、プラグインの「WP Mail SMTP」を使って設定できます。
SMTPとは
「Simple Mail Transfer Protocol」の省略で、送ったメールを相手に届ける仕組みのことです。メールを送るときに使う約束事とも言えます。もっと詳しく知りたいと思う方は、SMTPとは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典を見てみてください。ちなみにメールを受け取る仕組みは「POP(Post Office Protocol)」と言います。
プラグイン「WP Mail SMTP」をインストールする
では早速プラグインのインストールから行なっていきます。Word Press管理画面を開き、プラグインの新規追加で「WP Mail SMTP」を検索してインストール→有効化します。
「WP Mail SMTP」の設定をする
左のメニューバーにWP Mail SMTPが追加されるので、そこから「設定」を選択します。
「Launch Setup Wizard」と書かれたボタンを押して設定を進めても大丈夫ですし、そのすぐ下の項目「送信元メールアドレス」から設定の項目になるので今回はそちらから進めます。
メール設定
送信元メールアドレス:メールの差出人です。差出人として利用したい自身のメールアドレスを入力します。
フォーム名:差出人の名前です。自身の企業名やサイト名を入力します。
返信先:配信不能の受信の送信先です。チェックを入れます。
メーラー:今回は外部のSMTPサーバーを利用して送信するので「その他のSMTP」を選択します。
SMTP設定
ここからは自身の使用しているメールサーバーの情報が必要なので確認できる状態にしておきましょう。今回は例としてロリポップ!のメールサーバーを使います。XServerやYahoo!メールなど他のメールサーバーであっても、必要な情報は変わらないので参考にしてみてください。
ロリポップ!でのメール設定確認方法
ログイン後、メニューバーから「メール」→「メール設定/ロリポップ!webメーラー」を選択し、「メール設定」の「確認・変更」ボタンを押すとメール情報が確認できます。
Word Pressの管理画面に戻ります。
SMTP ホスト:自身の使用しているメールサーバーのホスト名を入力します。ロリポップ!であれば、「SMTP メールサーバー」がホスト名なので「smtp.lolipop.jp」を入力します。
暗号化:自身の使用しているメールサーバーの暗号化を選択します。ロリポップ!であれば、SSLで通信を暗号化してメールを送受信すると公式サイト内で確認したので「SSL」を選択します。
SMTP ポート:先程入力したSMTP ホストのポート番号を入力します。ロリポップ!であれば、SMTP メールサーバーのポート番号は465なので「465」を入力します。
TLS 自動化:「オン」にします。TLSはSSLの進化版のようなもので、サーバーがTLS暗号化をサポートしている場合はTLS暗号化が自動的に使用される、というものです。
認証:「オン」にして、SMTP ユーザー名とSMTP パスワードを入力します。
SMTP ユーザー名:自身の使用しているメールサーバーで設定したメールアドレスを入力します。ロリポップ!であれば、「メールアドレス」か「メールアカウント」がメールアドレスにあたります。
SMTP パスワード:自身の使用しているメールサーバーで設定したパスワードを入力します。ロリポップ!であれば、「メールパスワード」にあたります。
「設定を保存する」ボタンを押して保存します。
テストメールを送信する
設定が完了したら、WP Mail SMTPのタブを「メールテスト」に切り替えてテストメールを送信します。
送信先:テストメールを送りたいメールアドレスを入力します。別のドメインで確認するのがよいかと思います。
設定が完了したら「メールを送信」を押します。私は試しにYahoo!メールに送ってみました。
きちんと届きました。テストメール送信成功です。
設置したフォームのメール送信設定をする
実際にサイトに設置したお問い合わせフォームからメールが送れるように設定します。今回は「MW WP Form」というフォームのプラグインでやっていきます。他のフォームであっても、必要な設定は同じ箇所になってくるかと思うので参考にしてみてください。Word Press管理画面からMW WP Formに行き、該当のフォームを開きます。
自動返信メール設定
メニューバーの「自動返信メール設定」を進めていきます。
自動返信メール:こちらはフォーム入力時のメールアドレスが反映されるようにnameに入れた値(キー)を入力しておきましょう。
送信元(E-mailアドレス):使用しているメールサーバーのメールアドレスを入力します。WP Mail SMTPで設定した「送信元メールアドレス」または「SMTP ユーザー名」にあたります。
管理者宛メール設定
続いてメニューバーの「管理者宛メール設定」を進めていきます。
送信先(E-mailアドレス):管理者側で受信したいメールアドレスを入力します。
Return-Path(メールアドレス):WP Mail SMTPの返信先の設定で「送信元アドレスを返信先 (return-path) として設定」にチェックを入れていれば送信元アドレスにあたるので、WP Mail SMTPで設定した「送信元メールアドレス」または「SMTP ユーザー名」を入力します。
送信元(E-mailアドレス):WP Mail SMTPで設定した「送信元メールアドレス」または「SMTP ユーザー名」にあたります。
フォームからのメールが届いているか確認する
MW WP Formの設定が完了したら、フォームからのメールを送信してメールが届いているか確認します。今回は例としてロリポップ!のメールサーバーを使ったのでそちらから確認します。
ロリポップ!での受信メール確認方法
ログイン後、メニューバーから「メール」→「メール設定/ロリポップ!webメーラー」を選択し、「ロリポップ!webメーラー」の「ログイン」ボタンを押すとメーラーが開きます。受信メールボックスにメールが届いていました。
フォーム入力時に入力したメールアドレスの方にもちゃんとメールが届いていました。
それでもメールが届かない場合、まずは正常にプラグインが動作しているか確認しましょう。例えば、header.phpに「<?php wp_head(); ?>」が入っているか、footer.phpに「<?php wp_footer(); ?>」が入っているか、MW WP Formに<form>タグを入れてしまっていないかなどです。あるいは、管理者側で受信するメールアドレスがスパム判定をしてメールをはじいていることもあるので別のメールアドレスを使って確認しましょう。場合によっては利用しているレンタルサーバーでスパム判定されてしまうこともあるようです。
まとめ
以上の手順でSMTPを設定し、フォームからメールを送信することができます。ぜひ参考にしてみてください。