前言:
新搭建的WordPress站点默认不开放用户注册功能,需要管理员登陆系统进行相应的配置,使WordPress支持用户注册功能。同时,WordPress默认禁用了发送邮件功能,所以还要通过相应的配置使系统能向用户发送注册邮件。
一、管理员登陆系统,开放注册功能
勾选”任何人都可以注册”,在页面下方”保存设置”。
此时注册新用户并不会收到邮件,因为WordPress发送邮件功能未启用。
二、插件方式实现SMTP发件功能
搜索“WP SMTP”,选择安装“WP SMTP”插件。
三、插件Settings
SMTP信息要具体参考站点的管理员邮箱:
确保SMTP服务在管理员邮箱中已开启,outlook邮箱应该默认开启,但sina(smtp.sina.com)和QQ(smtp.qq.com)都是默认关闭的。
SMTP Password一般是独立邮箱密码,但如果开启SMTP服务时给出了一个授权码,则填写授权码。设置完成可以在下方输入用户的邮箱地址进行测试。
四、回到站点页面注册,用户能收到WordPress发送的重置密码的邮件
由于开启SMTP服务采用的管理员邮箱系统不同,可能用户邮箱会把邮件自动归为垃圾邮件
在收到的重置密码链接中,邮件系统会把url链接末尾的尖括号 ’>’解析成邮件地址,打开后提示“您的密码重设链接无效,请在下方请求新链接”。
解决方法:
修改wp-login.php文件,去掉 ’<>’ ,一劳永逸,将下面代码
$message .= '<' . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login') . ">\r\n";
修改为:
$message .= network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login');
五、 用户名、密码登陆即可
六、新用户注册时,点击邮件中的重置密码链接提示“您的密码重设链接无效”的 解决方案
WP安装目录下的/wp-includes/pluggable.php文件,把以下代码修改即可
$message .= '<' . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user->user_login), 'login') . ">\r\n\r\n";
修改为:
$message .= network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user->user_login), 'login') . "\r\n\r\n";