终于可以正常的发送评论回复邮件了

自从搬到万网的免费主机上,网站就不能发邮件了,连找回密码也不行。当然,以前的空间也老出问题,每天只发2个邮件就没反应了。昨天研究了一天,尝试了网上的各种代码各种插件都失败了。
然后我在万网后台提交了工单请求开启mail()函数函数,售后工程师给我的回复是:

您好,您的主机支持fsockopen方式发信,请您登录控制面板在php.ini配置中开启fsockopen函数,然后参考:http://help.www.net.cn/KnowledgeDetail.html?knowledgeId=5868351&categoryId=8311139 进行操作即可。感谢您的支持。

我用他给的代码测试发信,分别用了163的和qq的都失败了,最后想了想,用我在万网领的免费企业邮箱试一下,没想到真的成功了。
然后我给网站下了个WP SMTP插件,等设置好smtp相应的参数,却提示发送失败,有问题,我差点放弃治疗了。
还好想起来在阿里云论坛看到的一个教程:虚拟主机wordpress使用wp-smtp组件无法发送邮件的问题解决方法
引用原答案如下:

目前wordpress默认在wp-includes/class-smtp.php使用的建立数据连接的函数是stream_socket_client,安全起见,虚拟主机没有开放stream_socket_client函数,只开通了开通了fsockopen函数,因此如果使用默认方式会导致无法正常发送。
目前可以通过修改wp-includes/class-smtp.php文件,将
/**
$this->smtp_conn = @stream_socket_client(
$host . ":" . $port,
$errno,
$errstr,
$timeout,
STREAM_CLIENT_CONNECT,
$socket_context
);
*/

以上部分注释掉,使用
$this->smtp_conn = fsockopen($host, $port, $errno, $errstr);代替该部分。

我根据上面的提示修改了之后,在测试评论回复能不能收到邮件,谢天谢地成功了!

20150212113232

本文共 58 个回复

  1. dsus4 says:
    背景音乐是Dj o啥啥啥的卡农吧? :mrgreen:
  2. dsusplus says:
    disqus也是不错的~自带评论邮件提醒
      1. dsus4 says:
        @小二苘 貌似在wp上是插件,在typtcho上只是个非本地化的一段代码。。
  3. iE says:
    也用这个插件,后来换了主题不行了,一换回去又可以了 :evil:
  4. 星光 says:
    请教一个问题,我今天装了WP Mail Bank,测试邮件能够正常发送,但是无法自动进行评论回复邮件的发送,请问是因为函数问题吗?
    1. 小二苘 PO主 says:
      @星光 我的主题函数模板里有添加评论回复通知的代码,我是借鉴9iphp主题的
  5. Dextrad says:
    我的邮件回复竟然不支持html格式。。。

发表留言,喵!