加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何在WordPress中启用邮件?

发布时间:2020-12-13 13:06:29 所属栏目:PHP教程 来源:网络整理
导读:我在 Windows 8桌面上使用Apache 2.2.25和 PHP 5.3.28.有一次当我恢复我的wordpress密码时,我收到了这个错误: The e-mail could not be sent. Possible reason: your host may have disabled the mail() function. 我用Google搜索了如何启用mail()函数,发现
我在 Windows 8桌面上使用Apache 2.2.25和 PHP 5.3.28.有一次当我恢复我的wordpress密码时,我收到了这个错误:

The e-mail could not be sent. Possible reason: your host may have disabled the mail() function.

我用Google搜索了如何启用mail()函数,发现我需要使用我的服务器配置邮件服务器.我下载了hMailServer,但它没有用…请帮我如何启用mail()函数?我必须下载哪个邮件服务器?

正如我 posted here:

这是一个非常恼人的错误消息,因为它可能是很多东西,并且它不会揭示实际错误(在代码的其他部分经常会出现静音).

当wp_mail()函数返回false时会出现此错误,如果phpmailer-> Send()返回false或引发异常,则会发生此错误.

如何从PHP的mail()函数中显示警告

默认情况下这些通常是静音的,不幸的是WordPress从未捕获它们.要显示它们,只需从@mail中删除@符号(…在mailPassthru()函数中的wp-includes / class-phpmailer.php中删除:

if (ini_get('safe_mode') || !($this->UseSendmailOptions)) {
    $rt = @mail($to,$this->encodeHeader($this->secureHeader($subject)),$body,$header);
} else {
    $rt = @mail($to,$header,$params);
}

如何寻找其他可能的原因:

>在/wp-includes/pluggable.php中的wp_mail()底部添加一行:

// Send!
try {
    return $phpmailer->Send();
} catch ( phpmailerException $e ) {
    //------------- This next line is the one to add -------------------
    if (WP_DEBUG) echo '<pre>' . esc_html(print_r($e,TRUE)) . '</pre>';
    return false;
}

>它将转储引发异常的完整详细信息.不幸的是,它有时会包含这个无用的异常消息:“无法实例化邮件功能”.是的,感谢WordPress,这真的很有帮助.
>通过查看异常,您可以找到错误的行号,并希望通过代码追溯它以找到真正的原因.

祝好运.希望WordPress在将来的某个时候改进电子邮件错误处理.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读