2026年5月29日

2026年5月29日

WP Mail SMTPのGmail OAuth認証設定手順|Google Cloudの準備からテスト送信まで

WP Mail SMTP で Gmail を OAuth 認証で使うには、Google Cloud でプロジェクトと OAuth クライアントを作り、発行されたクライアント ID とクライアントシークレットをプラグインに登録して、最後に Google アカウントで送信を許可する、という3段階の作業が必要です。この記事では、その手順を管理画面の操作に沿って説明し、つまずきやすい「リダイレクト URI の不一致」や「数日で認証が切れる」問題の原因と防ぎ方まで扱います。

OAuth 認証を使う理由

Gmail の SMTP サーバーにユーザー名とパスワードで接続する方式は、Google 側のセキュリティ強化によって使える場面が限られています。アプリパスワードを使う方法もありますが、2段階認証の設定が前提で、パスワードを WordPress 側に保存することになります。

OAuth 認証では、WordPress がパスワードそのものを持たず、Google が発行したトークンでメールを送信します。パスワードを変更しても送信設定が壊れにくく、不要になれば Google アカウント側から許可を取り消せるのが利点です。一方で、Google Cloud 側の準備が必要なため、最初の設定はやや手間がかかります。

作業前の準備

  • WordPress と WP Mail SMTP を最新版に更新しておく
  • サイトのバックアップを取る(プラグイン設定もデータベースに保存されるため)
  • 送信に使う Gmail アカウント、または Google Workspace のアカウントにログインできる状態にしておく
  • サイトが https で表示されていることを確認する

送信元にしたいアドレスが Google Workspace のものか、個人の Gmail(@gmail.com)かで、後の「対象ユーザー」の選び方が変わります。どちらで送るかを先に決めておいてください。

手順1:WP Mail SMTP でメーラーに Gmail を選ぶ

管理画面の「WP Mail SMTP」→「設定」を開き、一般設定で次の項目を入力します。

  • 送信元メールアドレス:認証に使う Google アカウントのアドレス
  • 送信元の名前:メールの差出人として表示したい名前
  • メーラー:「Google / Gmail」

メーラーで Gmail を選ぶと、クライアント ID・クライアントシークレットの入力欄と、「認証済みのリダイレクト URI」が表示されます。このリダイレクト URI は次の手順で Google Cloud に登録するので、コピーしておきます。URI はプラグインのバージョンによって形式が異なることがあるため、ほかの記事に載っている値ではなく、自分の画面に表示された値を使ってください。

なお、有料版にはワンクリックで Google と接続できる方式が用意されている場合があります。(2026年10月現在)提供状況や名称は変わることがあるので、使っているエディションの画面で確認してください。この記事では、無料版でも使える「自分で OAuth クライアントを作る」方式を説明します。

手順2:Google Cloud でプロジェクトを作り Gmail API を有効にする

Google Cloud Console に、送信に使う Google アカウントでログインします。

  1. 画面上部のプロジェクト選択から新しいプロジェクトを作成する(名前は「wordpress-mail」など分かりやすいもので構いません)
  2. 「API とサービス」のライブラリで「Gmail API」を検索し、有効にする

Gmail API を有効にし忘れると、認証自体は通ってもメール送信の段階でエラーになります。後から原因を探すのが大変なので、ここで有効化まで済ませ、API の一覧で「有効」になっていることを確かめておきます。

手順3:OAuth 同意画面(Google Auth Platform)を設定する

OAuth クライアントを作る前に、同意画面の設定が求められます。Google Cloud の画面はたびたび改修されており、(2026年10月現在)同意画面まわりは「Google Auth Platform」としてまとめられ、ブランディング・対象・クライアントといった項目に分かれています。表記が異なる場合は、「OAuth 同意画面」に相当するメニューを探してください。

入力する主な内容は次のとおりです。

  • アプリ名:管理しやすい名前(例:自社サイトのメール送信)
  • ユーザーサポートメール・連絡先メール:自分のアドレス
  • 対象(ユーザーの種類):Google Workspace のアカウントなら「内部」、個人の Gmail なら「外部」

「外部」を選んだ場合の注意点

個人の Gmail では「内部」を選べないため「外部」になります。外部アプリは作成直後「テスト」状態で、この状態では次の制限があります。

  • テストユーザーとして登録したアカウントしか認証できない
  • 発行されたトークンが短期間(Google の説明では7日程度)で失効し、再認証が必要になる

「設定直後は送れたのに、1週間ほどで突然送れなくなった」という相談の多くはこれが原因です。動作確認が済んだら、公開ステータスを「本番」に切り替えてください。Gmail の送信権限は Google が機密性の高い権限として扱っているため、本番に切り替えると審査を案内されたり、認証時に「Google はこのアプリを確認していません」という警告が表示されたりします。自分のサイトのためだけに使う場合は、警告画面の詳細から先へ進んで許可する形で運用されることが多いですが、扱いは Google の方針で変わるため、公式のヘルプで最新の条件を確認してください。

Google Workspace で「内部」を選んだ場合は、組織内のアカウントに限定されるため、テスト状態や審査の制限を受けずに使えます。Workspace を使えるなら、こちらのほうが運用は安定します。

手順4:OAuth クライアント ID を作成する

「認証情報」(または Google Auth Platform の「クライアント」)から OAuth クライアント ID を作成します。

  • アプリケーションの種類:「ウェブ アプリケーション」
  • 承認済みの JavaScript 生成元:サイトのドメイン(例:https://example.com)
  • 承認済みのリダイレクト URI:手順1でコピーした URI を貼り付ける

作成するとクライアント ID とクライアントシークレットが表示されます。クライアントシークレットは第三者に知られると悪用される恐れがあるため、チャットやメールに貼らず、そのまま WordPress の設定画面に入力してください。

手順5:プラグインに登録して Google アカウントで許可する

WP Mail SMTP の設定画面に戻り、クライアント ID とクライアントシークレットを入力して設定を保存します。保存すると、Google アカウントでの送信を許可するためのボタンが表示されるので、クリックして Google のログイン画面に進みます。

送信に使うアカウントを選び、表示される権限を確認して許可すると、WordPress の設定画面に戻り、接続済みのアカウントが表示されます。ここで別のアカウントを選んでしまうと、送信元アドレスと認証アカウントが食い違うので注意してください。

設定値を wp-config.php で管理する方法

WP Mail SMTP は、設定値を wp-config.php の定数で指定する方法にも対応しています。管理画面から値を見られたくない場合や、複数環境で同じ設定を使いたい場合に便利です。編集前に wp-config.php のバックアップを取ってください。

define( 'WPMS_ON', true );
define( 'WPMS_MAILER', 'gmail' );
define( 'WPMS_GMAIL_CLIENT_ID', 'your-client-id' );
define( 'WPMS_GMAIL_CLIENT_SECRET', 'your-client-secret' );

定数で指定した項目は管理画面で編集できなくなります。定数でクライアント情報を入れた場合も、Google アカウントでの許可(手順5のボタン操作)は管理画面から行う必要があります。

手順6:テストメールで確認する

「WP Mail SMTP」→「ツール」のメールテストから、自分が受信できるアドレスにテストメールを送ります。成功と表示されたら、受信したメールのヘッダーを開き、送信元が意図したアドレスになっているか、迷惑メールフォルダに入っていないかを確認します。

あわせて、問い合わせフォームやパスワードリセットなど、実際にサイトが送るメールでも1通ずつ試しておくと安心です。

よくあるエラーと対処

redirect_uri_mismatch

Google Cloud に登録したリダイレクト URI と、プラグインが送った URI が一致していません。末尾のスラッシュ、http と https、www の有無の違いでも不一致になります。プラグインの画面に表示された URI をそのまま登録し直してください。

access_denied やアクセスをブロックされた旨の表示

外部アプリがテスト状態のまま、テストユーザーに登録していないアカウントで認証しようとしたケースが代表例です。テストユーザーに追加するか、公開ステータスを見直します。

送信元アドレスが書き換わる

Gmail は、認証したアカウント以外のアドレスを送信元にした場合、認証アカウントのアドレスに置き換えることがあります。別アドレスを送信元にしたいときは、Gmail の設定で「他のアドレスからメールを送信」に登録しておく必要があります。

しばらくして急に送れなくなる

テスト状態のトークン失効のほか、Google アカウントのパスワード変更やセキュリティ設定の変更で許可が取り消されることがあります。WP Mail SMTP の設定画面で接続を解除し、手順5の許可をやり直してください。メールログ機能(エディションによって提供範囲が異なります)や、プラグインのデバッグ表示でエラー内容を確認すると原因を絞り込みやすくなります。

まとめ

  • WP Mail SMTP の Gmail OAuth 設定は、Google Cloud でのプロジェクト作成・Gmail API の有効化・OAuth クライアント作成と、プラグインでの登録・許可で構成される
  • リダイレクト URI は自分のプラグイン画面に表示された値をそのまま登録する
  • 個人の Gmail(外部アプリ)はテスト状態のままだとトークンが短期間で失効するため、動作確認後に公開ステータスを見直す
  • 送信元アドレスは認証したアカウントと合わせ、テストメールと実際のフォームの両方で確認する
  • 設定変更や wp-config.php の編集前にはバックアップを取る

お気軽にご相談ください

お見積りへ お問い合わせへ
▲