AIサマリー
注:このガイドは、WP Mail SMTP のGmail メール送信機能に適用されます。
このエラーの意味
WP Mail SMTPがGmail経由でメールを送信するために使用しているOAuthリフレッシュトークンの有効期限が切れたか、Googleによって無効化されました。このプラグインは新しいアクセストークンを取得できなくなったため、メールの送信に失敗します。
よくある原因
- リフレッシュトークンは7日後に失効します(Gmailなどの機密性の高いスコープをリクエストする「テスト」モードのアプリに対するGoogleのポリシーによるものです)
- 6か月間使用されていないリフレッシュトークン(Googleは公開ステータスに関わらず、非アクティブなトークンを無効化します)
- Googleアカウントのパスワードを変更しました
- 「myaccount.google.com」の「セキュリティ」>「サードパーティ製アプリ」で、手動でアクセス権を無効にしました
- Googleは不審な活動を検知し、セキュリティ対策としてトークンを無効化しました
- アカウントのOAuthクライアントごとのリフレッシュトークンの上限(50個)を超えました(Googleは最も古いトークンを自動的に無効化します)
解決方法
このエラーを解決するための、完全な手順ガイドをご紹介します。
ステップ 1: OAuth アプリを本番環境に公開する(テストモードのみ)
トークンの有効期限が7日ごとに切れる場合は、Google Cloud プロジェクトがまだテストモードになっています。まず OAuth アプリを本番環境に公開してから、再接続してください。プロジェクトがすでに本番環境にある場合は、手順 2 に進んでください。
まず、Google Cloud Console を開きます。次に、「API とサービス」>「OAuth 同意画面」に移動し、「対象」タブをクリックします。
次に、「アプリを公開」をクリックし、続いて「確認」をクリックします。

最後に、ステータスが「本番環境」に変わっていることを確認してください。
ステップ2:Googleアカウントを再接続する
有効期限が切れた、または無効化されたトークンの問題を解決する最も手っ取り早い方法は、WP Mail SMTPをGoogleで再認証することです。
まず、「WP Mail SMTP」»「設定」に移動し、「Google / Gmailメーラー」セクションまでスクロールします。次に、「接続を削除」をクリックします。

その後、「Googleアカウントを使用してメールを送信することを許可する」をクリックしてください。

次に、Googleアカウントを選択し、Gmailの権限設定に同意してください。最後に、認証が完了したら、「設定を保存」をクリックしてください。
ステップ3:テストメールを送信する
テストメールを送信して、修正が正常に行われたか確認してください。
修正を確認するには、「WP Mail SMTP」»「ツール」に移動し、「メールテスト」タブをクリックしてください。「送信先」フィールドに受信者のメールアドレスを入力し、HTMLの切り替えスイッチを「ON」にしたまま、「メールを送信」をクリックしてください。

完了したら、成功メッセージが表示されているか確認し、メールが受信トレイに届いているか確認してください。
備考
- Google アカウントのパスワードを変更すると、既存の OAuth トークンはすべて直ちに無効になります。
- Google Workspace の[対象]タブで、[アプリを公開] ではなく [外部向けにする] をクリックし、[本番環境] を選択します。
これで完了です!これで、Gmailで発生する「invalid_grant: Token Expired or Revoked」エラーの解決方法と、WP Mail SMTPを通じてメール送信を再開する方法がわかりました。