
会員制サイトを作る場合などで、WordPressからユーザーにメールを送信したい場合が出てくると思います。例えば、登録完了の通知やパスワード変更の案内などなど…。
デフォルトの状態でもWordPressをインストールしているサーバーからメールを送信すること自体はできるのですが、運用していくうちにメールが届かなくなる可能性が高いです。特に送信者アドレスにフリーメールのアドレスを指定している場合などは、送り元を偽装していると見なされるので、非常によくありません。
メールをしっかりと届かせるためには、SPFやDKIMなどの設定が必要になります。実際には、メール送信専用のサービスを使うのが良いでしょう。
メール送信サービスを決める
代表的なところでは…
などがあります。
上記の4サービスとも、WordPress用のプラグインが用意されています。ですので、1行もコードを書かなくても導入できます。
どれを選ぶべきかは迷うとことですが、今回は代理店があって日本語でのサポートも行われているSendgridを選びました。月に12,000通まで無料で使えるというのも太っ腹。
それでは設定手順を紹介していきます。
独自ドメインのメールアドレスを用意する
まずは、所有しているドメインでメールアドレスを作成します。
メールアドレスを作る方法はG Suite(旧Google Apps)などいくつかあります。ですが、メールを受け取ることさえできればいいので、今回はバリュードメインで転送専用のメールアドレスを作りました。
受信専用のメールアドレスが簡単に作れます。
SednGrid側の設定
設定手順は日本語マニュアルの「独自ドメインを利用する」で紹介されています。このうちの、「Domain Whitelabel」と「 Email Link Whitelabel」をやっておきましょう。
発行されたレコードをDNSに追加することで、SPFとDKIMの設定ができます。これで、独自ドメインのメールからSendGrid経由で到達率の高いメールを送れるようになります。
DNSレコードの設定は、バリュードメインの場合こうなりました。一応、参考までに。
SendGridのWordPressプラグインをインストール
プラグインの検索画面で「sendgrid」と入力すると公式プラグインが見つかりますので、インストールして有効化します。
プラグインをインストールすると、ダッシュボードのメニューの「設定」>「SendGrid」から設定することができます。
ユーザー名&パスワードで認証する方法と、APIキーで認証する方法の2種類があります。今回はAPIキーを使いました。
送信者名や送信者アドレスの設定も忘れずに。
APIキーは、SendGridの管理画面の「Setting」>「API Keys」で作成することができます。
正しく設定できているかの確認
以上の設定で、WordPressから送信されるメールはSendGrid経由になります。
実際に送られたメールのソースを見てみましょう。
これはInboxの画面ですが、きっちりとSendGrid経由になっていますね。SPFとDKIMもパスしてるので完璧です。
こんな感じで、確実に届くトランザクションメールを送ることができます。WordPressからメールを送信する場合は、ぜひ参考にしてみて下さい。