万网主机未开启 stream_socket_client 函数导致无法通过 SMTP 发送邮件

由于部分主机(如万网)没有开启 stream_socket_client 函数导致没有办法通过 WordPress 的 SMTP 接口发邮件,而一般主机是开放 fsockopen 函数的,所以通过修改代码文件解决这个问题。

WordPress 没有提供钩子可以修改,只能直接修改代码了。

将 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);

原文链接:http://www.dmeng.net/tougao-20141208.html

Leave a Reply

Your email address will not be published.