万网的主机貌似都需要通过 smtp 来发送邮件,而且要开启 fsockopen(在万网后台可以开启,不会的请联系万网客服) 。但是 wordpress 的 smtp 发送方式为 steam_connect_client 而非fsockopen,所以,打开 /wp-include/class-smtp.php 大概是 274-282 行的位置,查找到下面的代码:
$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 这类 smtp 发送邮件的插件,配置好一般就可以了。
特别注意:由于这个方法是直接修改了 wordpress 的核心代码,一旦升级了 wordpress 版本,就需要重新进行修改,请务必记得!!!
以上就是万网主机wordpress无法发送邮件smtp的问题解决办法 的详细内容。