gpt4 book ai didi

WordPress SMTP 邮件 : test mail works but not wp_mail

转载 作者:行者123 更新时间:2023-12-02 03:41:12 26 4
gpt4 key购买 nike

我将 wordpress 与 WP Mail SMTP 插件一起使用,以便通过经过身份验证的 SMTP 发送电子邮件。我现在已经在 SMTP 服务器上打开了它,这样我们就可以在那里中继并且测试邮件有效 - 报告为真并且邮件到达。但是,如果我尝试使用我的插件中的 wp_mail 发送它不起作用 - wp_mail 返回 false 并且电子邮件没有到达。我在 wp_mail 函数中放置了一些调试代码,包括我在 wp_mail 最后的 try/catch 的 catch block 中调试了 $e->getMessage()发送实际邮件)。这表示

SMTP Error: Could not authenticate.

但是,如前所述,测试邮件有效!

然后我开始调试 phpmailer 对象并比较我的 wp_mail 调用和测试邮件的调用。我注意到 exceptions protected 成员对我来说是正确的,而不是对测试邮件。在我的调用中进入 wp_mail 时,似乎全局 phpmailer 不存在,因此它是使用 $phpmailer = new PHPMailer( true ) 在 wp_mail 中创建的 如果我将其更改为 false(即在 phpmailer 对象中将异常设置为 false)然后 wp_mail 不仅返回 true,而且邮件到达了!

如果我检查异常,但如果我不检查异常,邮件仍然到达,我怎么会收到身份验证错误?有什么想法吗?

我在我的开发环境中运行 wordpress 3.7.1 和 WP Mail SMTP 0.9.3。我在插件版本为 0.9.1 的 wordpress 3.6.1 中遇到相同的症状(测试邮件有效,但我的 wp_mail 调用无效)

最佳答案

即使身份验证失败,测试电子邮件功能似乎仍会继续尝试发送电子邮件。邮件服务器似乎允许我在没有身份验证的情况下进行中继,以便测试电子邮件通过。如果身份验证失败,从我的插件实际调用 wp_mail 会失败。如果我关闭 SMTP 身份验证,那么我的邮件也能正常工作。

我认为这是测试电子邮件功能中的错误,但我会与插件作者联系。

关于WordPress SMTP 邮件 : test mail works but not wp_mail,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19935287/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com