A-A+
wordpress 万网主机下无法发送邮件
在购买了万网主机,在线安装了 wordpress 后,发现之前可以发送邮件的功能却不能使用了,就是无论如何进行回复,访客都是收不到邮件的,在垃圾邮箱里面也没有找到,于是在网上寻找答案,原来万网的主机的确存在这个问题,万网主机使用 smtp 来发送邮件,并且需要开启 fsockopen,但是伟大的 wordpress 的 smtp 发送的方式是 steam_connect_client 并非是 fsockopen,两者完全的不兼容导致 wordpress 不能发送邮件,解决的方法也很简单,只需要将 wordpress 发送邮件方式 steam_connect_client 修改为 fsockopen 即可。
第一,打开 打开 /wp-include/class-smtpp.php 大概是 202-208 行的位置,找到下面的代码:
- $socket_context = stream_context_create($options);
- $this->smtp_conn = @stream_socket_client(
- $host . ":" . $port,
- $errno,
- $errstr,
- $timeout,
- STREAM_CLIENT_CONNECT,
- $socket_context
- );
需要注意的是最新版的可能有些不同,修改成如下的代码:
- $this->smtp_conn = @fsockopen($host,$port,$errno,$errstr,$timeout);
第二,我们还需要一款发送邮件的插件,比如 wp smtp 或者 wp mail smtp,在 wordpress 后台下载安装,简单的配置一下就可以了。
另外,这种修改方式有个最大的缺点就是修改的是 wordpress 的核心文件,一旦 wordpress 升级就需要我们再重新修改了。
可惜我是西部数码的主机
西部的主机应该有 win,linux 之分,在买的时候选择 linux 就可以。