前言:
新搭建的WordPress站点默认不开放用户注册功能,需要管理员登陆系统进行相应的配置,使WordPress支持用户注册功能。同时,WordPress默认禁用了发送邮件功能,所以还要通过相应的配置使系统能向用户发送注册邮件。
一、管理员登陆系统,开放注册功能
勾选”任何人都可以注册”,在页面下方”保存设置”。
重新进入站点页面,可以看到注册按钮已被点亮。
p.s.
此时注册新用户并不会收到邮件,因为WordPress发送邮件功能未启用。
二、插件方式实现SMTP发件功能
搜索“WP SMTP”,选择安装“Easy WP SMTP”插件。
p.s.
若出现WordPress安装失败:无法创建目录,这是由于权限不足导致的。
解决方法:
- 直接设置WordPress目录的访问权限为777,但这样设置不安全
chmod -R 777 /var/www/html #WordPress目录
- 安装插件用的FTP为 vsftpd,服务器为Apache2,所以直接授权apache访问权限
chown -R apache:root /var/www/html #WordPress目录
修改后所有者为apache,所属组仍为root
三、插件Settings
SMTP信息要具体参考站点的管理员邮箱:
p.s.
- 务必确保SMTP服务在管理员邮箱中已开启,outlook邮箱应该默认开启,但sina(smtp.sina.com)和QQ(smtp.qq.com)都是默认关闭的。
- SMTP Password一般是独立邮箱密码,但如果开启SMTP服务时给出了一个授权码,则填写授权码。设置完成可以在下方输入用户的邮箱地址进行测试。
四、回到站点页面注册,用户能收到WordPress发送的重置密码的邮件
p.s.
- 由于开启SMTP服务采用的管理员邮箱系统不同,可能用户邮箱会把邮件自动归为垃圾邮件,比如@outlook.com ……
- 在收到的重置密码链接中,邮件系统会把url链接末尾的尖括号 ’>’解析成邮件地址,打开后提示“您的密码重设链接无效,请在下方请求新链接”。
解决方法:
- 去掉 ’>’ 复制原url地址打开即可;
- 或者修改wp-config.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');