wordpress+万网主机所用SMTP发邮件的问题


万网的主机通常为了安全考虑,禁用了stream_socket_client函数。而worpdress里用smtp发邮件的话刚好是用这个函数,具体在这个文件:

wp-includes/class-smtp.php

$this->smtp_conn = @stream_socket_client(
 $host . ":" . $port,
 $errno,
 $errstr,
 $timeout,
 STREAM_CLIENT_CONNECT,
 $socket_context
 )

只好改为函数fsockopen才能正常使用smtp。

$this->smtp_conn = @fsockopen($host,$port,$errno,$errstr,$timeout);

 

不过,fsockopen也需要登录万网的控制面板去开启才行。
20151023103938

 

 

相当麻烦的。如果用smtp发邮件,参考都确认正确的情况,还一直有报错,就极有可能是以上的原因了。

SMTP -> ERROR: Failed to connect to server: (0)