F.Ko-Jiの「一秒後は未来」

WordPressの通知メールをSMTP経由で送信する(WP Mail SMTP / Gmail / Amazon SES)

WordPress に移行してテンプレートを自作したのですがコメント欄の設置がまだでした。ようやく昨日コメントフォームも設置して、そこでふと通知メールが来ないことに気づきました。普通に WordPress を VPS に設置するとメールは VPS から送信できるので何も気にする必要もないのですが、今回の環境は Docker なのでメールサーバーもコンテナにするか、ホスト側の Postfix を利用するかしないといけませんでした。。

ただ、それよりも手っ取り早く外部の SMTP サーバー経由(Gmail や Amazon SES など)で送信できないかなと思って調べると WP Mail SMTP というプラグインが見つかったので、こちらを利用することにしました。

このプラグインをインストールして有効化すると、管理画面の「設定」メニューの中に「メール」という項目が追加されますので、その設定ページから SMTP サーバーやポート番号、認証などの設定をおこないます。

今回は Gmail と Amazon SES の両方を試してみたのでその設定についてまとめました。

Gmail の SMTP サーバーを利用する場合

Gmail を利用していることが前提となります。『WordPressのメールが送信できないので、SMTPサーバの設定を外部サーバに変更する。』の内容を参考に設定しました。

メーラー WordPressの全てのメールをSMTP経由で送信する。
SMTP Host smtp.gmail.com
SMTP Port 465
Encryption SSLを使用する。
Authentication はい: SMTP認証を使用します。
Username 使用している Gmail のメールアドレスを入力
Password Gmail のパスワード。但し二段階認証を使用している場合は「アプリ パスワード」で発行したパスワードを使用。

これらの設定をするだけなので比較的簡単です。パスワードについては二段階認証を使っていなければ直接 Gmail のパスワードを設定すればいいですが、メールサービスなど大事なサービスではなるべく二段階認証を使いましょう。

Amazon SES の SMTP サーバーを利用する場合

Amazon Web Services を利用していることが前提となります。あと最初は24時間に200通という送信制限があります。個人ブログとかだとそんなにコメントなど来ないと思いますが、それでは足りないという場合は「Amazon SES サンドボックスの外への移動 – Amazon Simple Email Service」を参考に申請してみてください。

上記については割愛しつつ、Amazon SES の SMTP サーバーを利用するための準備として、

  • 送信元/送信先のメールアドレスを Amazon SES 側に登録して検証しておくこと
  • SMTP 認証用の Credentials を発行しておくこと

が必要となります。

メールアドレスの検証


↑ 「Email Addresses」というメニューをクリックして「Verify a New Email Address」をクリックし、メールアドレスを入力します。

登録されると確認メールが送信されてくるので、そのメール内にある確認用の URL をクリックすれば OK です。送信元のメールアドレス、送信先のメールアドレスの両方について実施しておきます。

SMTP 認証用の Credentials を発行


↑ 「SMTP Settings」というメニューをクリックして「Create My SMTP Credentials」のボタンをクリックします。


↑ 次の画面は特に変更せず右下の「Create」ボタンをクリック。


↑ そうするとランダムな SMTP Username と SMTP Password が生成されますので、これをコピペしておきます。(CSVでダウンロードも可能)

そこまでできたら、WordPress の管理画面に戻り、「設定」-「メール」のページから Gmai の場合と同様に以下の内容を設定します。なお、SMTP Host は US East リージョンを選択した場合のホスト名となっています。

From Email 先ほど検証したメールアドレスを設定
メーラー WordPressの全てのメールをSMTP経由で送信する。
SMTP Host email-smtp.us-east-1.amazonaws.com
(US East リージョンの場合)
SMTP Port 465
Encryption SSLを使用する。
Authentication はい: SMTP認証を使用します。
Username 先ほど作成した SMTP Username
Password 先ほど作成した SMTP Password

これで WordPress からの通知メールをきちんと受信できるようになりました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

著者について

fkoji

F.Ko-Ji

Webエンジニアやってます。最近は ドットインストール の開発がお仕事です。その傍ら、個人で Meity電車遅延なう梅酒.in#グラドル自画撮り部 の部室といったネットサービスを開発・運営してます。梅酒と草野球とリアル脱出ゲームが好きです。

» 詳しいプロフィールや運営サービスの一覧など