[修正]BuddyPressアクティベーションメールが送信されない?
公開: 2021-08-03BuddyPressの電子メール通知が送信されていませんか?
多くのBuddyPressユーザーがこの問題に遭遇します。 パスワードリセットメールが配信されても、アクティベーションメールが配信されない場合があります。
SMTPを使用してBuddyPress通知を修正する簡単な方法を紹介します。 記事の最後に、これらの電子メールをログに記録して再送信する方法も示します。
今すぐBuddyPressのメールを修正する
BuddyPressアクティベーションメールとは何ですか?
BuddyPressアクティベーションメールは、新しいユーザーが最初にサイトに登録したときに送信されるメールです。 これには、新しいユーザーがアカウントをアクティブ化するためにクリックする必要のあるリンクが含まれています。

このメールが配信されない場合、新しいユーザーはBuddyPressのメール確認プロセスを完了できません。 つまり、ログインして新しいアカウントを使用することはできません。
SMTPまたはサードパーティの電子メールプロバイダーを介してすべてのBuddyPress電子メールを送信する方法を紹介します。
BuddyPressの電子メール通知を修正する方法
BuddyPressの電子メールが送信されない場合、またはスパムが送信される場合は、このガイドの手順で修正されます。
- WPMailSMTPをインストールします
- メールプロバイダーを選択する
- メールログを有効にする
- コードスニペットを追加してBuddyPressのメールを修正する
- BuddyPressアクティベーションメールをテストする
- ログにBuddyPressアクティベーションメールを表示する
- BuddyPressアクティベーションメールを再送する
WPMailSMTPをインストールすることから始めましょう。
1. WPMailSMTPをインストールします
WP Mail SMTPは、WordPressに最適なSMTPプラグインです。 サードパーティの電子メールプロバイダーを介してWordPressの電子メールを送信できます。
電子メールプロバイダーを使用すると、重要な認証ヘッダーが電子メールに追加されます。 これらのヘッダーのない電子メールは多くの場合、迷惑メールフォルダにファイルされるため、これは非常に重要です。
このチュートリアルの基本的な手順は、無料またはProバージョンのWPMailSMTPで機能します。 次のような追加機能が提供されるため、Proライセンスを使用することをお勧めします。
- BuddyPressのメールロギング
- BuddyPressのメールを個別にまたはまとめて再送信する
- WordPressメールのトラッキングを開いてクリックします
これらの機能がどのように機能するかについては、チュートリアルの後半で説明します。
Proバージョン以降を使用している場合は、プラグインの最新のコピーをWPMailSMTPアカウントの[ダウンロード]タブからダウンロードできます。

先に進み、プラグインのzipファイルをWordPressサイトにアップロードします。

プラグインをアクティブ化するとすぐに、セットアップウィザードがブラウザで開きます。 次に、セットアップウィザードを実行してみましょう。
2.メールプロバイダーを選択します
このステップでは、WordPressメールの送信に使用するメールプロバイダーを決定します。
WP Mail SMTPは、あらゆるサイズのBuddyPressコミュニティの無料および有料のメーラーをサポートします。

BuddyPressアクティベーションメールがすぐに届くようにするため、トランザクションメールプロバイダーを選択することを強くお勧めします。
トランザクションメールプロバイダーは、大量の送信を処理するように設計されており、ほぼ瞬時にメールを配信するのに非常に優れています。 SMTP.comとSendinblueはどちらも優れたオプションです。
テストをしているだけなら、Sendinblueには無料のプランがあります。

Gmailやその他のSMTPなどの他のプロバイダーは、小さなサイトで動作する可能性がありますが、非常に大量の送信を処理するようには設計されていません。 したがって、Gmail SMTPを使用すると、コミュニティが成長するにつれて問題が発生する可能性が高くなります。
WordPressメールプロバイダーを選択したら、下のリンクをクリックして対応するドキュメントを開きます。 ドキュメントの手順に従うと、登録プロセスを完了して接続するのに役立ちます。
| Lite+Proで利用可能なメーラー | プロの追加メーラー |
|---|---|
| SMTP.com | Microsoft Outlook |
| Sendinblue | アマゾンSES |
| Mailgun | Zoho Mail |
| SendGrid | |
| Gmail / Google Workspace | |
| その他のSMTP |
手が必要?
当社のエリートライセンスには、SMTP.comまたはMailgun用のWhiteGloveSetupが含まれています。
3.電子メールロギングを有効にする
WPメールSMTPセットアップウィザードの最後に、2つの機能をオンにするオプションがあります。
- 詳細な電子メールログ設定は、件名、送信者、受信者、およびその他のヘッダー情報を追跡します。
- 毎週の電子メールの要約は、送信された電子メールに関する毎週のレポートを作成します。
これらの両方をオンにすることをお勧めします。

電子メールログを有効にした後、[保存して続行]をクリックしてセットアップを完了します。 WP Mail SMTPは自動テストメールを送信するので、すべてが機能していることがわかります。
これでメールが設定されました。BuddyPress管理者に役立つ他のいくつかの機能をお勧めします。
WPMailSMTP»設定に進みましょう。

次に、上部の[メールログ]タブをクリックします。

ここで[電子メールの内容をログに記録する]を選択することをお勧めします。 これにより、ヘッダーに加えてメール本文全体がログに記録されます。 これは、失敗したBuddyPressアクティベーションメールを再送信する場合に役立ちます。
必要に応じて、ここで次のような他の設定を有効にすることもできます。
- 添付ファイルを保存する
- オープンメールトラッキング
- リンク追跡をクリックします
また、必要に応じて、ログの保持期間を短縮して、BuddyPressの電子メールログがディスク領域を使いすぎないようにすることもできます。

これで、WP Mail SMTP BuddyPressのセットアップが完了しました。テストする前に、もう1つ行う必要があります。
新しいメールプロバイダーを介してBuddyPressメールをリダイレクトするには、短いコードスニペットを追加する必要があります。
4.コードスニペットを追加してBuddyPressの電子メールを修正します
デフォルトでは、WordPressはwp_mail()関数を使用してパスワードリセットメールを送信します。 BuddyPressのアクティベーションメールはデフォルトではwp_mail()を介して送信されないため、多くの人が問題を抱えています。
したがって、このステップでは、WPMailSMTPを介してすべてのBuddyPress電子メールを再ルーティングするコードスニペットを追加します。

このコードスニペットは、すべての電子メールがプレーンテキスト形式ではなくHTML電子メールとして送信されることも確認します。 これにより、オープンとクリックを追跡できます。
まず、FTP経由でサイトに接続する必要があります。 cPanelを使用している場合は、ファイルマネージャーを使用してファイルを編集することもできます。
ファイルマネージャまたはFTPアプリケーションで、次の場所に移動します
/wp-content/plugins/buddypress/bp-core
ここにbp-core-functions.phpというファイルが表示されます

何か問題が発生した場合に備えて、編集する前にファイルのコピーを作成することをお勧めします。
次に、 bp-core-functions.phpファイルを編集して、このコードスニペットに貼り付けます。
コメントセクションの直後の10行目に追加できます。

BuddyPressでSMTPを有効にするために貼り付けるコードは次のとおりです。
// Set BP to use wp_mail
add_filter( 'bp_email_use_wp_mail', '__return_true' );
// Set messages to HTML for BP sent emails.
add_filter( 'wp_mail_content_type', function( $default ) {
if ( did_action( 'bp_send_email' ) ) {
return 'text/html';
}
return $default;
} );
// Use HTML template
add_filter(
'bp_email_get_content_plaintext',
function( $content, $property, $transform, $bp_email ) {
if ( ! did_action( 'bp_send_email' ) ) {
return $content;
}
return $bp_email->get_template( 'add-content' );
},
10,
4
);
ファイルを保存すれば完了です。 これで、すべてのBuddyPressメールがHTML形式のWPMailSMTPを介して送信されます。
やってみよう!
5.BuddyPressアクティベーションメールをテストする
これで、WP Mail SMTPが稼働し、すべてのBuddyPress電子メールが電子メールプロバイダーを介して送信されます。 これにより、メールの配信可能性に関する問題が修正されます。
それをテストするために、BuddyPressサイトに新しいユーザーを登録してアクティベーションメールをトリガーすることができます。 メールが確実に配信されるようにするため、このテストには必ず実際のメールアドレスを使用してください。
さあ、今すぐテストユーザーを登録してください。

フォームを送信すると、受信トレイにアクティベーションメールが届きます。

BuddyPressの確認メールがスパムに送信される場合は、DNSレコードが欠落している可能性があります。
これをテストするには、WP Mail SMTPEmailTestページに移動します。

テストメールを送信すると、WP Mail SMTPはDNSレコードの問題を検出し、不足しているものを通知します。
たとえば、DMARCレコードを作成していない場合は次のように表示されます。

すべてが機能している場合は、先に進んで、最初に説明した追加の電子メールロギング機能のいくつかを確認できます。
6.ログにBuddyPressアクティベーションメールを表示する
これでWordPressのメールログが有効になり、BuddyPressから送信されたすべてのメールがメールログに保存されます。
WPMailSMTP»Eメールログにアクセスして確認してください。

メールログの上部にBuddyPressアクティベーションメールが表示されます。

また、オープントラッキングとクリックトラッキングを有効にしたため、受信者がアクティベーションメールを受信してリンクをクリックしたこともわかります。

ログファイルを開くと、いくつかの追加情報が表示されます。
上部に、メールのステータスが表示されます。

すべてのメーラーは、送信済みおよび失敗ステータスをサポートしています。 SMTP.com、Sendinblue、またはMailgunを使用している場合は、未確認または配信済みも表示される場合があります。
次に、最後のヒントを1つ紹介します。それは、BuddyPressから確認メールを再送信する方法です。
7.BuddyPressアクティベーションメールを再送信します
基本的な電子メールログ情報のすぐ下に、再送信リンクもあります。
これにより、失敗したBuddyPressアクティベーションメールを再送信できます。 必要に応じて、別のメールアドレスに転送できます。
失敗したBuddyPressアクティベーションメールを再送信するには、[はい]をクリックするだけです。

以上です! これで、BuddyPressSMTPを使用してアクティベーションメールを修正する方法がわかりました。
今すぐBuddyPressのメールを修正する
次に、WordPressでプッシュ通知を設定します
BuddyPressのユーザーまたは訪問者に警告しますか? 特定のアクションに基づいてアラートを自動的に送信することも、何か新しいことを発表したときに手動でプッシュ通知を送信することもできます。
無料のプラグインを使用してWordPressにWebプッシュ通知を追加する方法については、このチュートリアルを確認してください。
メールを修正する準備はできましたか? 最高のWordPressSMTPプラグインを今すぐ始めましょう。 WP Mail SMTP Eliteには、完全なWhite Glove Setupが含まれており、14日間の返金保証があります。
この記事が役に立った場合は、FacebookとTwitterでフォローして、WordPressのヒントとチュートリアルを確認してください。
