我将 wordpress 与 WP Mail SMTP 插件一起使用,以便通过经过身份验证的 SMTP 发送电子邮件。我现在已经在 SMTP 服务器上打开了它,以便我们可以在那里中继并且测试邮件工作 - 报告真实并且邮件到达。但是,如果我尝试使用插件中的 wp_mail 发送它不起作用 - wp_mail 返回 false 并且电子邮件没有到达。我在 wp_mail 函数中放置了一些调试代码,包括我在$e->getMessage()
wp_mail 的最后(当它尝试发送实际邮件时)的 try/catch 中从 catch 块中调试出来。这说
SMTP 错误:无法验证。
但是,如上所述,测试邮件有效!
然后我开始调试 phpmailer 对象并比较我的 wp_mail 调用和测试邮件的调用。我注意到exceptions
受保护的成员是我的,而不是测试邮件。在我的通话中进入 wp_mail 时,似乎全局 phpmailer 不存在,因此它是在 wp_mail 中创建 $phpmailer = new PHPMailer( true )
的真的,但是邮件到了!
如果我检查异常,但如果我不检查异常,邮件仍然会到达,我怎么会收到身份验证错误?有任何想法吗?
我在我的开发环境中运行 wordpress 3.7.1 和 WP Mail SMTP 0.9.3。我在带有插件版本 0.9.1 的 wordpress 3.6.1 中遇到了相同的症状(测试邮件有效,但我的 wp_mail 调用无效)