[已修复] BuddyPress 激活电子邮件未发送?

已发表: 2021-08-03

您的 BuddyPress 电子邮件通知没有发送吗?

很多 BuddyPress 用户都遇到了这个问题。 有时,您会发现密码重置电子邮件已送达,但激活电子邮件未送达。

我们将向您展示使用 SMTP 修复 BuddyPress 通知的简单方法。 在文章的最后,我们还将向您展示如何记录和重新发送这些电子邮件。

立即修复您的 BuddyPress 电子邮件

什么是 BuddyPress 激活电子邮件?

BuddyPress 激活电子邮件是新用户首次在您的网站上注册时发送的电子邮件。 它包含一个链接,您的新用户需要单击该链接来激活他们的帐户。

BuddyPress activation email

如果此电子邮件未送达,您的新用户将无法完成 BuddyPress 电子邮件验证过程。 这意味着他们无法登录并使用他们的新帐户。

我们将向您展示如何通过 SMTP 或第 3 方电子邮件提供商发送所有BuddyPress 电子邮件。

如何修复 BuddyPress 电子邮件通知

如果 BuddyPress 电子邮件没有发送,或者它们将成为垃圾邮件,本指南中的步骤将解决它。

  1. 安装 WP 邮件 SMTP
  2. 选择电子邮件提供商
  3. 启用电子邮件记录
  4. 添加代码片段以修复 BuddyPress 电子邮件
  5. 测试 BuddyPress 激活电子邮件
  6. 在日志中查看 BuddyPress 激活电子邮件
  7. 重新发送 BuddyPress 激活电子邮件

让我们从安装 WP Mail SMTP 开始。

1.安装WP Mail SMTP

WP Mail SMTP 是 WordPress 最好的 SMTP 插件。 它允许您通过第三方电子邮件提供商发送 WordPress 电子邮件。

使用电子邮件提供商会将重要的身份验证标头添加到您的电子邮件中。 这非常重要,因为没有这些标头的电子邮件通常被归档在垃圾邮件文件夹中。

本教程中的基本步骤将适用于免费或专业版的 WP Mail SMTP。 我们建议您使用 Pro 许可证,因为它为您提供了一些额外的功能,包括:

  • BuddyPress 电子邮件记录
  • 单独或批量重新发送 BuddyPress 电子邮件
  • WordPress 电子邮件的打开和点击跟踪

我们将在本教程后面向您展示这些功能是如何工作的。

如果您使用的是专业版或更高版本,您可以从您的 WP Mail SMTP 帐户的“下载”选项卡中下载该插件的最新副本。

Download the WP Mail SMTP plugin

继续将插件 zip 文件上传到您的 WordPress 网站。

Install WP Mail SMTP

激活插件后,设置向导将在您的浏览器中打开。 接下来让我们通过设置向导进行操作。

2. 选择电子邮件提供商

在此步骤中,我们将决定您要使用哪个电子邮件提供商来发送 WordPress 电子邮件。

WP Mail SMTP 支持任何规模的 BuddyPress 社区的免费和付费邮件。

Choose an email service provider for WordPress SMTP

由于您希望 BuddyPress 激活电子邮件能够快速到达,我们强烈建议您选择交易电子邮件提供商。

事务性电子邮件提供商旨在处理大量发送,并且他们非常擅长几乎即时发送电子邮件。 SMTP.com 和 Sendinblue 都是不错的选择。

如果您只是测试一下,Sendinblue 有一个免费计划供您使用。

Sendinblue pricing

Gmail 或其他 SMTP 等其他提供商可能会在小型站点上工作,但它们并非旨在处理大量发送。 因此,使用 Gmail SMTP,随着社区的发展,您更有可能遇到问题。

选择 WordPress 电子邮件提供商后,单击下面的链接打开相应的文档。 遵循我们文档中的步骤将帮助您完成注册过程并建立联系。

Lite + Pro 中可用的邮件程序Pro 中的其他邮件程序
SMTP.com 微软展望
森丁蓝亚马逊 SES
邮筒Zoho Mail
发送网格
Gmail/谷歌工作区
其他 SMTP

需要帮忙?

我们的 Elite 许可证包括用于 SMTP.com 或 Mailgun 的 White Glove 设置。

3.启用电子邮件记录

在 WP Mail SMTP 设置向导结束时,您可以选择打开 2 个功能:

  • 详细的电子邮件日志设置将跟踪主题、发件人、收件人和其他标题信息。
  • 每周电子邮件摘要将创建有关已发送电子邮件的每周报告。

我们建议您将这两个都打开。

Enable WordPress email logs and weekly summary

启用电子邮件记录后,单击保存并继续以完成设置。 WP Mail SMTP 将发送一封自动测试电子邮件,让您知道一切正常。

现在您的电子邮件已设置完毕,我们想推荐一些对 BuddyPress 管理员有帮助的其他功能。

让我们前往WP Mail SMTP » Settings

WP Mail SMTP settings menu

现在单击顶部的电子邮件日志选项卡。

Email log settings tab

我们建议您在此处选择记录电子邮件内容。 这将记录除标题之外的整个电子邮件正文。 如果您想重新发送失败的 BuddyPress 激活电子邮件,这会很有帮助。

如果需要,您还可以在此处启用其他设置,包括:

  • 保存附件
  • 打开电子邮件跟踪
  • 点击链接跟踪

如果需要,您还可以缩短日志保留期,以确保 BuddyPress 电子邮件日志不会占用太多磁盘空间。

WP Mail SMTP Email Log options

现在您已经完成了 WP Mail SMTP BuddyPress 设置,在我们对其进行测试之前还有一件事要做。

我们需要添加一个简短的代码片段,以通过您的新电子邮件提供商重定向您的 BuddyPress 电子邮件。

4. 添加代码片段以修复 BuddyPress 电子邮件

默认情况下,WordPress 使用wp_mail()函数发送密码重置电子邮件。 BuddyPress 激活邮件默认不通过wp_mail()发送,这就是为什么这么多人对它们有问题的原因。

所以在这一步中,我们将添加一个代码片段,它将通过 WP Mail SMTP 重新路由所有BuddyPress 电子邮件。

此代码段还将确保所有电子邮件都作为 HTML 电子邮件发送,而不是纯文本格式。 这使您可以跟踪打开和点击。

首先,您需要通过 FTP 连接到您的站点。 如果您使用的是 cPanel,您还可以使用文件管理器来编辑文件。

在文件管理器或您的 FTP 应用程序中,导航到

/wp-content/plugins/buddypress/bp-core

您将在此处看到一个名为bp-core-functions.php的文件

Add code snippet to bp-core-functions.php to fix BuddyPress activation email

最好在编辑之前复制文件,以防万一出现问题。

现在编辑您的bp-core-functions.php文件并粘贴此代码片段。

您可以在第 10 行添加它,就在注释部分之后。

Edit php-core-functions.php in BuddyPress

这是您要粘贴以在 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 电子邮件都通过 WP Mail SMTP 以 HTML 格式发送。

让我们试试吧!

5. 测试 BuddyPress 激活邮件

现在我们已经启动并运行了 WP Mail SMTP,所有 BuddyPress 电子邮件都通过您的电子邮件提供商发送。 这将解决您在电子邮件送达率方面遇到的问题。

为了测试它,我们可以在您的 BuddyPress 网站上注册一个全新的用户来触发激活电子邮件。 请务必使用真实的电子邮件地址进行此​​测试,因为我们希望确保电子邮件已送达。

现在就注册一个测试用户吧。

Register a new BuddyPress user to trigger activation email

提交表单后,您会在收件箱中收到激活电子邮件。

BuddyPress activation email

如果 BuddyPress 验证电子邮件进入垃圾邮件,则您可能缺少 DNS 记录。

您可以通过前往 WP Mail SMTP电子邮件测试页面进行测试。

Email test in WP Mail SMTP

当您发送测试电子邮件时,WP Mail SMTP 将检测您的 DNS 记录的任何问题,并让您知道缺少什么。

例如,如果您尚未创建 DMARC 记录,您会看到以下内容。

WP Mail SMTP DMARC warning

如果一切正常,我们可以继续看看我们在开始时谈到的一些额外的电子邮件记录功能。

6. 在日志中查看 BuddyPress 激活邮件

现在您启用了 WordPress 电子邮件日志记录,从 BuddyPress 发送的每封电子邮件都将保存在您的电子邮件日志中。

前往WP Mail SMTP » 电子邮件日志查看。

Open the email log in WP Mail SMTP

我们可以在电子邮件日志的顶部看到 BuddyPress 激活电子邮件。

BuddyPress activation email in WordPress email log

由于我们启用了打开和点击跟踪,我们还知道收件人收到了激活电子邮件并点击了链接。

BuddyPress click and open tracking on activation email

当您打开日志文件时,您会看到一些额外的信息。

在顶部,您可以看到电子邮件的状态

Status of BuddyPress activation email

所有邮件程序都支持SentFailed状态。 如果您使用的是 SMTP.com、Sendinblue 或 Mailgun,您可能还会看到未确认已交付

接下来,我们将向您展示最后一个提示:如何从 BuddyPress 重新发送验证电子邮件。

7. 重新发送 BuddyPress 激活电子邮件

在基本电子邮件日志信息的正下方,还有一个重新发送链接。

这允许您重新发送失败的 BuddyPress 激活电子邮件。 如果需要,您可以将它们转发到其他电子邮件地址。

只需点击“是”即可重新发送失败的 BuddyPress 激活电子邮件。

Resend WooCommerce emails in WP Mail SMTP

就是这样! 现在您知道如何使用 BuddyPress SMTP 来修复您的激活电子邮件。

立即修复您的 BuddyPress 电子邮件

接下来,在 WordPress 中设置推送通知

您想提醒 BuddyPress 用户或访客吗? 您可以根据特定操作自动发送警报,或者在有新消息要宣布时手动发送推送通知。

查看本教程,了解如何使用免费插件将网络推送通知添加到 WordPress。

准备好修复您的电子邮件了吗? 立即开始使用最好的 WordPress SMTP 插件。 WP Mail SMTP Elite 包括完整的白手套设置并提供 14 天退款保证。

如果本文对您有所帮助,请在 Facebook 和 Twitter 上关注我们以获取更多 WordPress 提示和教程。