虽然不是这样的解决方案,但我建议您发送几封测试电子邮件来隔离问题,并验证问题是如何以及在哪里出现的。可能您的电子邮件确实已发送,但由于缺少一些邮件头等原因被远程邮件服务器拒绝。下面的代码可能会帮助您确定这一点。暂时放进去functions.php. wp_mail 将返回true 关于成功和false 否则
function email_test() {
$test1 = wp_mail( user@yourdomain.com, "Test 1", "Just testing" );
$test2 = wp_mail( user@otherdomain.com, "Test 2", "Just testing some more" );
var_dump($test1);
var_dump($test2);
var_dump(ini_get(\'smtp_port\'));
die();
}
add_action(\'plugins_loaded\', \'email_test\');
有一个
few SMTP related PHP settings 这可能会影响
mail() 反过来
wp_mail(). 如果你使用的是共享托管,我建议你简单地向你的托管提供商描述问题,让他们调整设置,或者希望他们至少能够为你指明正确的方向。
我也看到了一些发送电子邮件的问题,但由于缺少邮件头,被远程服务器拒绝了。虽然wp_mail 应该注意其中的大部分,添加如下标题From, Reply-To, Return-Path, Organization, X-PHP-Script 有时可能会有所帮助(查看wp_mail).