相关函数被禁之后,WordPress 邮件功能失效的解决方法
如果主机禁用了 fsockopen 函数,并且禁用了 WordPress 默认的发送邮件的方法 stream_socket_client ,那么 WordPress 后台发送邮件的时候就会出问题。
看见小练目前使用的 浪点云主机 就是禁用了 fsockopen 函数,不过它并未禁用 pfsockopen 函数,所以我们可以通过修改 WordPress 的一个文件实现正常的邮件发送功能。
首先定位到 wp-includes 目录下的 class-smtp.php 文件,找到以下所示代码:
@stream_socket_client( $host . ":" . $port, $errno, $errstr, $timeout, STREAM_CLIENT_CONNECT, $socket_context );
将其完全替换为以下代码并保存:
@pfsockopen($host,$port,$errno,$errstr,$timeout);
这样之后 WordPress 的邮件发送功能就可以正常使用了,建议使用 WP-Mail-SMTP 插件来进行邮件发送以确保邮件送达。