WordPressのメール送信を Gmail SMTP経由にする

WordPressのメールは通常、Sendmailというしくみを使って送信されます。しかし、AWSなどでメールを送信するしくみがなかったり、ドメインの設定でメールが外に送信できないといった制限があったり、またメールアドレスによっては迷惑メールになりやすいなどの不都合もあります。

そこで、これを SMTP経由で送信できる『WP Mail SMTP by WPForms』をご紹介しましょう。

まずは、いつもと同様にプラグインをインストールします。

すると、「設定」メニュー内に「WP Mail SMTP」という項目が増えます。

Gmailとの接続

送信元アドレスと送信者名を設定したあと、メーラーを Gmail、Mailgun、SendGridから選べるので「Gmail」を選びましょう(G Suite(Google Appsでも同様))。

すると、Gmailの設定項目として「Client ID」と「Client Secret」を入力する欄が表示され、「Authorized redirect URI」という文字列が生成されます。まずはこの文字列をコピーしておきましょう。

続いて、次のページを開きます。

ログインすると、次のようなプロジェクト作成画面が表示されます。

「プロジェクトを作成」が選ばれている状態で、続行ボタンをクリックします。

APIが有効になると、案内が出るので「認証情報に進む」をクリックしましょう。

それぞれ、次のように入力・選択します。

  • 使用するAPI
    Gmail API
  • APIを呼び出す場所
    ウェブサーバー(node.js、Tomcatなど)
  • アクセスするデータの種類
    ユーザーデータ

「必要な認証情報」ボタンをクリックすると、次のような画面が表示されます。赤枠に、先ほどコピーした内容を貼り付けます。

「クライアントIDの作成」ボタンをクリックすると、認証時の画面のメッセージなどを作成する画面が表示されますが、今回は自分で認証するだけなので、「サービス名」に適当な名前を入れて、他はそのままで「次へ」ボタンをクリックします。

すると「Client ID」が発行され、また認証情報をダウンロードできます。ただし、今回はダウンロードは不要で、また「Client Secret」も入手しなければならないため、ここはこのまま「完了」ボタンを押しましょう。

すると、今作成したアプリケーションが一覧に表示されます。サービス名をクリックして下さい。

詳細画面の上部に、「クライアントID」と「クライアントシークレット」という文字列が表示されるため、これをコピーして先ほどの「WP Mail SMTP」の設定欄に貼り付けます。これで、最初の準備が完了です。

WP Mail SMTPの設定

設定を行なって、「Save Settings」ボタンをクリックすると、設定欄の下に「Allow plugin to send emails using your Google Account」というボタンが表示されます。これをクリックしましょう。

すると、Googleアカウントの画面が表示され、メール送信の代理を許可するかを求められるので、許可します。

これで設定が完了です。

設定をテストする

設定ができたら、同じ画面の画面上部に「Email Test」というタブがあるので、こちらに切り替えて受信できるメールアドレスを入力して送信しましょう。正しくメールが受信できていることを確認します。

エラーメッセージが表示される場合は、設定などが間違えているので見直してみて下さい。使いやすくて良いですね。