AI要約
注意: このガイドは、WP Mail SMTP の Gmail メーラー に適用されます。
このエラーの意味
WP Mail SMTPに保存されているOAuth認証情報(クライアントIDとクライアントシークレット)の設定が間違っているか、Google Cloud Consoleのアプリケーションと一致していません。「トークンが期限切れました」のバリアントとは異なり、これは設定の不一致であり、単なる古いトークンではありません。
一般的な原因
- WP Mail SMTPに入力する際のクライアントIDまたはクライアントシークレットのタイプミス
- 間違ったOAuthクライアントタイプが使用されている(例:Webアプリケーションの代わりにデスクトップアプリ)
- Google Cloud Consoleの承認済みリダイレクトURIにWP Mail SMTPコールバックURLが含まれていない
- Google Cloud ConsoleのOAuth認証情報が存在しなくなった(削除されたか、新しいものに置き換えられた)
解決方法
エラーを解決するための完全なステップバイステップガイドを以下に示します。
ステップ 1: OAuth クライアントの種類を確認する
最も一般的な原因は、間違ったアプリケーションタイプで作成されたOAuth認証情報です。まず、お持ちのものを確認してください。
Google Cloud Consoleを開き、WP Mail SMTPに使用しているプロジェクトを選択します。次に、APIとサービス » 認証情報に移動します。
OAuth 2.0 クライアントIDの下で、認証情報を見つけ、タイプがWebアプリケーションであることを確認します。すでにWebアプリケーションと表示されている場合は、手順2に進みます。タイプがデスクトップアプリまたはその他の場合は、新しい認証情報を作成します。
新しいものを作成するには、認証情報を作成をクリックし、OAuth クライアントIDを選択します。次に、アプリケーションタイプをWebアプリケーションに設定します。


承認済みリダイレクトURIの下で、+ URIを追加をクリックし、https://connect.wpmailsmtp.com/google/を入力します。


最後に、作成をクリックします。


手順2:リダイレクトURIを確認する
OAuthクライアントがすでに正しいタイプであった場合、次に確認するのはリダイレクトURIです。
APIとサービス » 認証情報で、WebアプリケーションOAuthクライアントの横にある鉛筆アイコンをクリックします。次に、承認済みリダイレクトURIの下で、https://connect.wpmailsmtp.com/google/がhttpsと末尾のスラッシュを含めて正確にリストされていることを確認します。
URIが見つからない場合は、+ URIを追加をクリックし、上記のURLを貼り付けて、保存をクリックします。
手順3:クライアントIDとクライアントシークレットをコピーする
OAuthクライアントタイプとリダイレクトURIが確認できたら、認証情報をコピーしてWP Mail SMTPに貼り付けられるようにします。
APIとサービス » 認証情報で、OAuth 2.0 クライアントIDの下にある認証情報の横の鉛筆アイコンをクリックします。


次に、クライアントIDをコピーします。


次に、+ シークレットを追加をクリックして、新しいクライアントシークレットを生成します。


最後に、クライアントシークレットをコピーします。
注意: クライアント ID またはクライアント シークレットに余分なテキストやスペースが含まれていないか注意してください。Google は完全なクライアント シークレットを一度しか表示しません。
手順4:WP Mail SMTPを更新して再承認する
新しい認証情報をWP Mail SMTPに貼り付けて、Googleアカウントを再接続します。
まず、WP Mail SMTP » 設定に移動し、Google / Gmailセクションまでスクロールします。次に、接続を削除をクリックして、古い認証情報をクリアします。


その後、新しいクライアントIDとクライアントシークレットを対応するフィールドに貼り付けます。


次に、設定の保存をクリックし、次にプラグインにGoogleアカウントを使用してメールを送信することを許可するをクリックして、OAuthフローを開始します。


最後に、Googleアカウントを選択し、要求された権限を付与します。
ステップ5:テストメールを送信する
テストメールを送信して修正を確認します。
修正を確認するには、WP Mail SMTP » ツールに移動し、メールテストタブをクリックします。宛先フィールドに受信者のアドレスを入力し、HTMLトグルをオンのままにして、メール送信をクリックします。


完了したら、成功メッセージを確認し、メールが受信トレイに届いたことを確認してください。
注記
- リダイレクト URI は、
httpsとhttpの違いや末尾のスラッシュを含め、正確に一致する必要があります。 - Gmail APIが有効になっていない場合は、APIとサービス » ライブラリに移動し、「Gmail API」を検索して、有効にするをクリックします。
- 資格情報を修正した後も7日ごとにエラーが再発する場合は、Google Cloudプロジェクトが「テスト」モードになっている可能性があります。APIとサービス » OAuth同意画面 » 対象ユーザーでアプリを本番環境に公開し、アプリを公開をクリックします。
これで完了です!WP Mail SMTPを介してGmailの「invalid_grant: Bad Request」エラーを修正し、メール送信を再び機能させる方法がわかりました。