「お客様への注文完了メール、ちゃんと届いてるかな?」
「あれ?管理者宛の受注確認メールがいつまで経っても来ない…。」
そんなお悩みありませんか?
WordPressサイトからメールを送信する際に、こんなメールトラブルに遭うことはよくあります。
私自身も「WordPressからのメールが、なぜか特定のGoogleグループアドレスだけに届かない…。」なんて経験があります。
特に、WordPressのサーバーとメールサーバーが異なる場合、この問題は顕著に現れます。
今回は、そんなWrodPressメールがが届かなかった原因と対応策(「WP Mail SMTP」プラグインの導入方法)についてまとめます。
【原因】WordPressメールがGmailに届かない!
「WordPressメールがGmailに届かない!」
実はこれ、WordPressの標準的なメール送信の仕組みに原因があることが多いようです。
詳しい解説は省きますが、WordPressはサーバーに元々備わっているメール送信機能を使っています。
でもこの方法ですと、送信元の「身元保証」が弱いんですよね。
特に私の場合は、WordPress(さくらレンタルサーバー)、メールサーバー(Google Workspace)と、サーバーが異なるのでなおさらです。
「身元証明」が弱い送信元からのメールは、自動的に受信拒否されたり、迷惑フォルダに直行になったり、ひどい時にはサーバー側で送信自体がブロックされてしまいます。
そこで登場するのが、メール送信の信頼性を格段に上げてくれる「SMTP送信」という方法です。
SMTP(Simple Mail Transfer Protocol)とは、メール送信専用のプロトコル(通信の規格)です。
このSMTP送信を使うことで、送信元のサーバーを認証してからメールを送信するため、「このメールは正当な送信元です」と証明しやすくなるのです。
それでは、この「SMTP送信」をWordPressでどのように実現すれば良いでしょうか?
今回は、比較的簡単に実現できる「WP Mail SMTP」というプラグインを利用する方法をお伝えします。
【対策】「WP Mail SMTP」プラグインのススメ
WordPressでSMTP送信を実現するプラグインはいくつかありますが、個人的には「WP Mail WordPress by WPForms」がおすすめです。理由はいくつかあります。
- 設定が比較的簡単:専用の設定画面が見やすく、特にGmailやMicrosoft 365 といった主要なメールサービスとの連携がスムーズに行える。
- セキュリティが高い:Google Workspace(Gmail)と連携する場合、パスワードをWordPress内に保存する必要がなく、より安心な「OAuth 2.0」という認証方式を利用できる。
- トラブルシューティグに強い:設定後のテストメールを送る機能や、メール送信の成功・失敗を記録するログ機能(※)が備わっている。
- (※)ログ機能は無料版でも基本的なものが付いていますが、「WP Mail Logging」のような別のプラグインを併用するのがオススメ!
まずはインストールして、有効化しましょう。
- WordPress管理画面 > [プラグイン] > [新規追加] をクリック。
- 検索窓に「WP Mail SMTP」と入力
- 「WP Mail SMTP by WPForms」を見つけて[今すぐインストール]ボタンをクリック。
- インストールが完了したら、[有効化]ボタンをクリック。
これで、準備はOKです。
【対策】WP Mail SMTP と Google Workspace(Gmail)の連携ステップ
さて、ここからは「WP Mail SMTP」の設定です。
Googleも推奨している安全な「OAuth 2.0」認証方式で進めていきましょう。
ちょっと手順が多いですが、一つずつ確認しながら進めば大丈夫です!
設定ウィザードで「Google/Gmail」を選択
プラグインを有効化すると、親切なセットアップウィザードが起動します。
「始めましょう」的なボタンをクリックして、進んでください。
(もし起動しなくても、管理画面の左メニューに [WP Mail SMTP] > [設定] があるので、そちらから進めてください。)
最初の「メーラーを選択」画面で、「Google/Gmail」を選び、[保存して続行]をクリックします。
Google Cloud Platform(GCP)での下準備
「Google/Gmail」を選択すると、「クライアントID」や「クライアントシークレット」といった、入力欄が出てきます。
これは、あなたのWordPressサイトからGoogleに対して「Gmail送信機能を使わせてください」とお願いするための許可証のようなものです。
この許可証を発行するためにGoogle Cloud Platform(GCP)というGoogleのサービス上での設定が必要となります。
今回の設定で一番手順が多く、専門的な部分ですがひとつずつクリアしていきましょう!
1.GCPプロジェクトを作る
まずは、メール送信に使いたいGoogleアカウント(Google Workspaceの管理者アカウントを推奨します)で、Google Cloud Platform コンソールにログインします。
- 初めてアクセスする場合は、利用規約への同意を求められるので、画面の指示に従ってください。
- 画面上部にある [プロジェクトの選択] をクリックし、リソースを選択とポップアップが出たら、[新しいプロジェクト] を選択。
- わかりやすいプロジェクト名(例:My WordPress Mailer)を入力して、[作成] をクリック。しばらくするとプロジェクトが作成されます。
2.Gmail API を有効にする。
作成したプロジェクトが選択されていることを確認してから、作業を進めます。
- 左上のナビゲーションメニュー(≡)> [APIサービス] > [ライブラリ] を選択。
- 検索窓に「Gmail API」と入力し、検索結果に出てきた「Gmail API」をクリック。
- [有効にする]ボタンをクリックします。これで、このプロジェクトでGmail機能を利用する準備が整います。
3.OAuth同意画面を設定する。
次に、「このアプリ(WordPress)は、ユーザーに変わってこんな操作(Gmail送信)をします」という同意を求める画面の設定をします。
これが正しく設定されていないと、後で認証エラーになることがあります。
- 左上のナビゲーションメニュー(≡)> [APIサービス] > [OAuth同意画面] を選択。
- OAuthの概要を設定します([開始]をクリック)。
- アプリ名:連携を許可する際にユーザーに表示される名前です。分かりやすい名前(例:WordPress メール送信)を入力。
- ユーザーサポートメール:任意のメールアドレスを入力します。
- 対象:外部を選択します。
- 連絡先情報:任意のメールアドレスを入力します。
- Google APIサービス:ユーザーデータに関するポリシーに同意しますにチェックを入れて、[作成]をクリック。
- ブランディングの設定
- アプリケーションのドメインを設定します。
- アプリケーションのホームページ:WordPressサイトのトップページのURL(例:https://kikko-ma-n.com)
- アプリケーション プライバシーポリシー リンク:プライバシーポリシーページのURL(例:http://kikko-ma-n.com/privacy-policy/)
- アプリケーション 利用規約:(例:http://kikko-ma-n.com/terms-of-service/)
※ これらの項目は必須項目です。もし御作成であれば、一時的にホームページのURLを入れておき、後で必ず作成・更新をしてください。
- 承認済みドメインを設定します(例:kikko-ma-n.com)。
- Google Seach Consoleで所有権が確認済みである必要があります。未確認の場合は、先に所有権の確認作業を済ませてください。
- blog.kikko-ma-n.comのようにサブドメインを含む場合も、トップレベルのドメイン(kikko-ma-n.com)のみを入力します。
- デベロッパーの連絡先情報:あなたのメールアドレスを入力します。
- アプリケーションのドメインを設定します。
- 対象タグを選択し、公開ステータスの[アプリを公開]をクリック。
- 「本番環境にpushしますか?」と確認されますので、[確認]をクリック。ステータスが「本番環境」に変わればOKです。
4.認証情報(OAuthクライアントID)を作成する
最終段階として「クライアントID」と「クライアントシークレット」を取得します。
- 左のナビゲーションメニュー(≡)> [APIとサービス] > [認証情報] をクリック。
- 画面上部の[+認証情報を作成] > OAuthクライアントID を選択。
- アプリケーションの種類:プルダウンメニューから「ウェブアプリケーション」を選択。
- 名前:この認証情報の名前です。分かりやすい名前を設定してください。
- 承認済みのリダイレクトURI:「WP Mail SMTP」プラグイン設定画面の「承認済みリダイレクトURI」からコピー&ペースト。
- [作成] ボタンをクリック。
- 作成に成功すると、ポップアップウィンドウに「クライアントID」と「クライアントシークレット」が表示されます。この「クライアントID」と「クライアントシークレット」は必ず忘れないようにメモしておいてください。
これで、Google Cloud Platform での設定は完了です。お疲れ様でした。
WP Mail SMTPに認証情報を入力、Googleアカウントで認証
WordPressの管理画面に戻り、[WP Mail SMTP] > [設定] を開きます。
- 先ほど、メモした「クライアントID」と「クライアントシークレット」を「WP Mail SMTP」プラグインの設定場面にコピー&ペーストしてください。
- [設定を保存]ボタンをクリックします。
- 設定が保存されると、ページが再読み込みされ、「認証」というセクションに、「サイトがあなたのGoogleアカウントを使ってメールを送信することを許可します」というボタンをクリック。
- 見慣れたGoogleのログイン画面、そして「wpmailsmtp.comがGoogleアカウントへのアクセスをリクエストしています」という許可画面が表示されます。
- ここで、Google Cloud Platform で設定作業を行なったGoogleアカウントを選択してください。
- アクセス許可内容(Gmailのメール送信など)を確認し、問題なければ [許可] ボタンをクリックします。
- 成功すると、「WP Mail SMTP」の設定画面にリダイレクトされ、「正常に連携されました!」といったメッセージが表示されれば、認証完了です。
ここまで設定ができれば、ほとんど完了です。
最後に送信者の情報を設定しましょう。
送信者(From)情報を設定する。
最後に、メールでを送るときの「差出人」情報を設定します。
「WP Mail SMTP」設定画面の[一般]タブを開いてください。
- 送信元メールアドレス:実際にメールの差出人として表示させたいメールアドレスを入力します。(例:no-reply@kikko-ma-n.com など)
- 原則として、ここで設定できるアドレスは認証に使用したGoogleアカウトのアドレス、またはそのアカウントに紐づけられた送信エイリアスのみです。
- 送信メールアドレスの強制使用:チェックを入れておくことを推奨します。WordPress内の他のプラグインなどが別の送信元アドレスを指定しても、ここで設定したアドレスに強制的に上書きしてくれます。
- 送信者名:メールを受け取った人に表示される送信者の名前です(例:サイト名など)
- 送信者名を強制:送信元メールアドレスの強制使用同様に、チェックを入れておくことをお勧めします。
送信者情報を設定できたら、最後にテストメールを送信してみましょう。
設定完了!テストメールで確認!
最後に、ちゃんと接続できているかテストメールを送ってみましょう。
- WordPress管理画面の[WP Mail SMTP] > [ツール]タブを開きます。
- テストメールを送信の[送信先]に、テストメールを受け取りたいご自身のメールアドレスを入力します。
- [メール送信]ボタンをクリック。
しばらく待って、「テスト HTML メールが正常に送信されました!」と成功メッセージが表示されれば成功です!
終わりに:メール設定の基礎編は終了
WP Mail SMTPプラグインを利用したGoogle Workspaceとの連携設定、お疲れ様でした。
Google Cloud Platformの設定は、難関に感じたかと思いますが、一度設定を完了させてしまえば、WordPressからの大切なメール通知が届かないといった問題を大幅に減らすことができます。
しかし、中にはテストメールの結果SPFやDKIMの警告が出てしまった方もいるかと思います。
その場合、「別のメールの信頼性を高める方法」を試す必要があります。
メールのSPF・DKIM設定については次の記事で解説しておりますので、ぜひ参考にしてください。
私の場合は…
WordPress → さくらレンタルサーバー
メール → Google Workspace(Gmail) で設定していました。