WordPress 不发送电子邮件? 这是修复WordPress电子邮件问题的方法

已发表: 2019-10-18

WordPress 不发送电子邮件吗? 或者您的 WordPress 网站发送的电子邮件是否被标记为垃圾邮件? 在这篇文章中,我们将介绍如何解决与 WordPress 电子邮件可传递性相关的两个问题。 我们将解释为什么 WordPress 电子邮件问题经常发生,并提供一些提高电子邮件送达率的策略。

wordpress不发送电子邮件

WordPress 电子邮件问题:WordPress 不发送电子邮件或电子邮件以垃圾邮件告终

为什么来自 WordPress 的电子邮件不会进入我的收件箱? 这是一个常见的问题。 为什么来自联系表格、电子商务订单和其他 WordPress 功能的 WordPress 电子邮件有时会出现在垃圾邮件文件夹中或根本没有发送?

简单的答案是垃圾邮件发送者和电子邮件提供商之间正在进行的斗争。 垃圾邮件发送者希望将他们的邮件发送到收件箱,而电子邮件提供商希望过滤掉尽可能多的垃圾邮件。垃圾邮件是由每分钟发送数百万封电子邮件的(通常受到损害的)服务器生成的。

为了打击垃圾邮件,电子邮件服务提供商(如 Gmail、Office 365、企业电子邮件系统等)加强了对服务器生成电子邮件的限制。 为了将服务器生成的电子邮件发送到收件箱,电子邮件提供商通常需要某种身份验证。 由于服务器生成的电子邮件通常会欺骗电子邮件地址并且缺乏这种身份验证,因此可以消除大量垃圾邮件。

但是,由于合法的 WordPress 电子邮件也是服务器生成的,因此电子邮件提供商可以将它们归类为垃圾邮件,并且要么将其放入垃圾邮件文件夹中,要么根本不发送。 这些来自 WordPress 的合法电子邮件可能包括密码重置、联系表单通知、订单通知等。

为什么 WordPress 电子邮件会被标记为垃圾邮件?

WordPress 包含一个名为wp_mail的内置函数。 WordPress 核心调用的wp_mail函数以及在与用户进行交易时需要生成电子邮件的插件。 当您阅读交易时,不要认为电子商务。 考虑与用户的任何交互(或“交易”),从密码重置到表单条目和订单的通知。

从您的 WordPress 网站自动生成的(交易)电子邮件通常缺少由网络邮件或电子邮件应用程序发送的“真实”电子邮件所拥有的验证凭据。 如果电子邮件缺少适当的凭据,则它们经常会被电子邮件提供商使用的垃圾邮件过滤器捕获。

如何认证从 WordPress 网站发送的电子邮件

要了解电子邮件可传递性的幕后真实情况,让我们回顾一下电子邮件认证的一些技术细节。 如果这看起来让人不知所措,或者您对首字母缩略词感到头疼,请不要担心,因为我们将在后面的帖子中介绍解决电子邮件可传递性问题的更直接的方法。

可通过三种方式验证电子邮件以避免垃圾邮件过滤器:

DKIM – 域名密钥识别电子邮件

DKIM 是一种协议,允许组织向电子邮件提供商验证消息是否合法。 这是如何用简单的英语解释 dkim 的绝佳解释。 DKIM 是一个非常复杂的过程,通常在域的 DNS 设置中设置为 TXT 记录。

SPF – 发件人政策框架

SPF 通常也是域的 DNS 设置中的 TXT 记录,并指示哪些服务器有权为域发送主要内容。

DMARC – 基于域的消息认证、报告和一致性

DMARC 通常也是域 DNS 设置中的 TXT 记录,并用作另一种旨在防止电子邮件地址欺骗的身份验证协议。 DMARC 通过确保电子邮件的发件人地址与服务器可以“合法”发送电子邮件的域对齐来扩展 DKIM 和 SPF。 它还提供了有关如何处理身份验证失败的消息的说明,并提供了一个电子邮件地址,用于对使用域名的消息进行反馈。

DKIM、SPF 和 DMARC 的区别

  • 基本上,DKIM 验证消息本身,而 SPF 验证它发送的服务器。 DMARC 既使用它们,也提供一些策略和反馈机制。
  • 因此,您需要所有三个来正确认证电子邮件。
  • 如果您想了解更多细节,这里有一个很好的总结:了解 SPF、DKIM 和 DMARC。

如何设置 DNS 记录

既然我们已经介绍了电子邮件认证,您会怎么做? 如果您仍在尝试从您的 WordPress 站点(从您的服务器)发送电子邮件,您将需要为您的域正确配置 DNS 记录。

如何检查 DNS 记录是否已经存在

如果您使用 cPanel 进行托管,请找到 DNS 区域,然后找到区域编辑器。

  • 检查您域的 DNS 设置并查找现有记录。 您将在条目的开头看到 SPF、DKIM 和 DMARC。 它们可能是 TXT 记录。
  • 典型的 SPF 记录如下所示: v=spf1 +a +mx +ip4:192,168.1.1~all
  • 典型的 DKIM 记录如下所示(您可能没有这个): v=DKIM1; k=rsa; p= RcWG3v2kuwyGThCVUjQtTM40M3yi3dNjoHT5OezyldVrTRcefT0E34T7GiMAo572Nh85SC0NgZt1ZJJ
    mHX2dgHvbImb3vnSMQn9KFMGLHbnMk8VWMLa1o0M7tNBtikchH2MeAxshFDyXFnDpuOGJP2BhWlu3h45
    stGDoe3kluwpebZRPIg0zxDd4NEOH2d5X7PO0koCJol33fYtZUEoPRezIri2fBXOhe6vs5TVYpfA0I9U5
    cI370e4qRSS1LFB9I8Ggonja1YWI3y6NWw9vZrp7vSvDEwOofGYH7Nea2FElpx92VxmRVxhBQocOEoTSP
    ls6NV0wbf1Ks03WDMN4lW0hKntC;
  • 典型的 DMARC 记录如下所示: v=DMARC1;p=none;sp=quarantine;pct=100;rua=mailto:[email protected];

如果 DNS 吓到你怎么办?

是的,应该。 DNS 设置中的搞砸能力因素很高。 如果你不知道你在用 DNS 记录做什么,你真的会弄得一团糟。 这就是拥有出色支持的主机(如 Liquid Web)的价值所在。 一个好的主机应该可以帮助您正确设置 DNS。

对于新帐户

如果您要在 cPanel 中设置新帐户,请确保选中 DNS 设置下的复选框,以在此帐户上启用 DKIM 和启用 SPF。

DNS 设置

  • 您仍然需要设置 DMARC 记录,而 cPanel 无法自动执行此操作,因为它包含有关策略和报告电子邮件地址的信息。
  • 但是 cPanel 确实在区域编辑器中为您提供了一些向导。 单击相关域旁边的管理,然后单击添加记录按钮旁边的下拉菜单并选择 DMARC。
    DNS 区域编辑器 cPanel
  • 注意:某些 cPanel 安装可能不会为您提供 DMARC 作为选项,因此您必须联系您的网络主机为您添加 DMARC 或在 cPanel 中为您提供选项。

对于现有主机帐户

  • 您可以使用上述相同的过程设置 DMARC。
  • 您可以在 cPanel 中的电子邮件送达率下设置 SPF 和 DKIM。
  • 该向导将分析您现有的记录,显示存在的任何问题,并允许您安装正确的记录。
  • 注意:如果您使用第三方电子邮件服务,如 Google Apps、Office 365、Zoho Mail 等,您需要从他们那里获取 SPF 和 DKIM 记录(您可能在设置这些服务时添加了这些记录) .
    • cPanel 可能想尝试用它自己的覆盖那些,这可能会导致可传递性问题。 所以不要覆盖它们。

来自我的 WordPress 网站的电子邮件未送达。 如何解决此问题?

现在我们了解了电子邮件可传递性的基础知识,让我们通过另一组问题来帮助解释为什么您的 WordPress 电子邮件没有被发送(或传递)。

你上过黑名单吗?

如果针对您服务器的 IP 地址提出垃圾邮件投诉,您的服务器可能会被列入黑名单。 如果发生这种情况,来自您服务器 IP 地址的所有电子邮件都将被电子邮件提供商视为可疑邮件,并最终进入垃圾邮件文件夹或根本不发送。

您可以在此处查看您的服务器的 IP 是否被列入黑名单:http://mxtoolbox.com/blacklists.aspx

如果您不确定服务器的 IP 地址是什么,找到它的一种简单方法是在 Windows 中打开命令提示符或在 MacOS 中打开终端,然后输入ping domain.com (显然将 domain.com 替换为有问题的域名) )。

如果您在共享主机上与可能有数千个其他站点共享 IP 地址,则其他用户的不良行为或安全措施可能会导致您的电子邮件被列入黑名单。 通常,如果您使用的是 VPS 或专用服务器,则您只有您的站点的专用 IP 地址。 这是拥有 VPS 或 Dedicated 的重要优势。

一个流行的选择:使用 WordPress SMTP 插件

WordPress SMTP 插件是解决事务性电子邮件问题的一种选择。 WP Mail SMPT 等插件将允许您使用 Gmail 等现有电子邮件帐户的 SMTP 设置来替换标准wp_mail功能。

WPForms 的 WP Mail SMTP

不幸的是,像这样的插件的广泛使用导致 Gmail 和其他人为此目的打击使用他们的 SMTP 服务器。 如果您将 Gmail 帐户用于 SMTP,您可能会发现您的帐户在没有警告的情况下关闭(问我我是怎么知道的) 。 更糟糕的是,除了您的网站无法发送电子邮件之外,您可能不知道您的帐户已被关闭。 因此,如果您正在寻找可靠性,这不是最佳选择。

如果您使用的是您控制的 SMTP 服务器,或者可能是付费的 Google Apps、Office 365 等,则 SMTP 插件仍然可以成为解决方案。不过,您最好还是检查一下它们的使用条款!

比 WordPress SMTP 插件更好:事务性电子邮件服务

在 WordPress 中发送事务性电子邮件的更好方法是使用专门从事该领域的众多第三方服务之一。 事务性电子邮件服务优于使用常规 SMTP 服务器,因为它们提供报告(有些比其他更好)。 当您想要检查特定电子邮件的状态时,电子邮件报告非常重要,无论它是否已送达、无法送达、已打开、已退回等。

比较 4 种 WordPress 交易电子邮件服务

第三方交易电子邮件服务有许多不同的选项。 以下是一些在 WordPress 空间中更常见的内容。

1.亚马逊SES

  • 与大多数 Amazon Web Services 一样,SES 对于轻度使用非常便宜(每 1000 封电子邮件 0.10 美元)。 使用 SES 发送 WordPress 电子邮件没有免费级别(除非您的站点托管在 Amazon EC2 上)。 但定价很便宜,每 1000 美元 0.10 美元。
  • 报告不是很好。 您只能看到作为计数的发送统计信息,而不是单个电子邮件的状态(它是打开的还是退回的?)
  • 使用亚马逊的 AWS 简单电子邮件服务 (SES) 是带有两个插件的 WordPress 的一个选项。 请注意,即使使用这些插件,也很难设置。

WP 卸载 SES Lite

WPForms 的 WP Mail SMTP

2.邮枪

  • https://www.mailgun.com/pricing/
  • 具有良好报告功能的可靠、可靠的交易电子邮件交付。
  • 每月免费发送 10,000 封电子邮件。
  • 缺点是设置很复杂。 涉及使用信用卡和 SMS 代码验证帐户、在您的服务器上设置子域、使用 SPF 和 DKIM 记录验证服务器以及设置 MX 记录。
  • 设置后,Mailgun 可以通过 WordPress 中的 API 密钥使用其官方插件实现:

适用于 WordPress 的 Mailgun

3.发送网格

  • https://sendgrid.com/pricing/
  • 目前我选择的客户端 WordPress 网站服务。
  • 每天免费发送 100 封电子邮件。 很多基本的网站。
  • 设置很简单,只需创建一个 API 密钥并复制并粘贴到 WordPress 中即可。
  • 报告 UI 非常好。 您可以查看过去 3 天内发送的电子邮件的所有信息。 对于 30 天的历史记录,您必须升级到付费计划。
  • 使用他们的官方插件在 WordPress 中实现 Sendgrid:

发送网格

4. Sendinblue

  • https://www.sendinblue.com/pricing/
  • 我没有亲自尝试过这个选项,但我信任的来源强烈推荐它。
  • 每天免费发送 300 封电子邮件。
  • 据报道,设置很简单,就像 Sendgrid 一样,具有良好的报告功能。
  • Sendinblue 还免费集成了电子邮件营销和短信营销服务。
  • 这绝对是一个可供调查的选择。
  • 使用官方插件与 WordPress 集成:

SendinBlue 订阅表格和 WP SMTP

交易电子邮件服务比较图表

服务免费套餐付费等级设置报告
亚马逊SES 没有任何每 1,000 美元 0.10 美元难的贫穷的
邮筒10,000/月100,000 @ $79/月难的好的
发送网格100/天60,000 @ $14.95 简单伟大的
发送蓝300/天40,000 @ $25/月简单好的

有关交易电子邮件的更多提示

这里有一些提示,可确保通过交易电子邮件服务发送电子邮件。

检查您的表单通知设置

发件人设置为填写表单的用户的电子邮件地址是很常见的。 但是,您在这里实际做的是欺骗电子邮件地址,因为通知是从服务器发送的,而不是实际用户。 因此,以用户为发件人的通知经常被标记为垃圾邮件或根本不发送。 您需要将发件人设置为您控制的电子邮件地址,以便 DKIM 和/或 SPF 对其进行验证。 质量表单插件(如 Gravity Forms)允许您为FromReply to指定不同的电子邮件地址。

建议设置:

  • 表单通知从[email protected]发送给收件人。
  • 表单回复设置为用户的电子邮件地址。
  • 这样,通知是从可以验证的地址发送的,如果您回复通知,电子邮件就会发送给用户。
  • 注意: noreply 地址甚至不需要存在。 如果是这样,请确保有一个自动回复器告诉任何发送电子邮件的人该邮箱未受到监控。 此外,请确保邮件不会在 noreply 收件箱中收集并被自动删除。

检查您的第三方电子邮件服务设置

如果您使用 Google GSuite 或 Microsoft Office 365 之类的工具处理电子邮件,则添加 DMARC、DKIM 和 SPF 记录是设置过程的一部分。 如果您不添加这些记录,您的电子邮件将不会被正确签名,并且很可能最终会出现在垃圾邮件文件夹中。

如果您长期使用其中一项服务并在 DMARC、DKIM 和 SPF 记录成为流程的一部分之前设置它们,请务必返回并添加它们,否则您的电子邮件可能无法送达。

定期安排黑名单检查

安排(每月?)提醒,检查 MXToolbox 的黑名单,了解您拥有网站的所有服务器的 IP 地址。 转到 https://mxtoolbox.com/blacklists.aspx。

提示:为您的结果页面添加书签(您会注意到 URL 包含您服务器的 IP 地址),以便您每次都可以直接访问您的结果。

与客户合作时交易电子邮件的额外提示

在您的合同或服务条款中提及电子邮件交付

没有人愿意被声称错过了百万美元交易的客户起诉,因为他们的收件箱中没有出现联系表格通知。 由于这里存在潜在的责任,因此您需要在合同中提供强有力的免责声明。 声明您只能控制发送而不能控制电子邮件的接收。 您需要一位当地律师来查看此声明。

在您的启动过程中包括交易电子邮件设置

当网站启动时,我为每个客户设置了一个单独的交易电子邮件服务帐户。 通过为每个客户设置一个单独的帐户,如果出现可交付性问题,您将可以访问特定于他们的报告(显示发送、接收和打开)。 您还可以更轻松地保持在免费交易电子邮件服务的每日发送限制之下。

观看网络研讨会:谁偷了我的电子邮件? 将 WordPress 电子邮件发送到收件箱

这篇文章来自最近的网络研讨会:谁偷了我的电子邮件? 将 WordPress 电子邮件发送到 Nathan Ingram 托管的收件箱。 在本次网络研讨会中,Nathan 将介绍如何修复 WordPress 不发送电子邮件以及如何将 WordPress 电子邮件发送到收件箱。

观看网络研讨会

通过 10 个关键提示了解有关 WordPress 安全性的更多信息。 立即下载电子书: WordPress 安全指南
现在就下载