WordPress 用户注册发送邮件问题

新搭建的WordPress站点默认不开放用户注册功能,需要管理员登陆系统进行相应的配置,使WordPress支持用户注册功能。同时,WordPress默认禁用了发送邮件功能,所以还要通过相应的配置使系统能向用户发送注册邮件。

一、管理员登陆系统,开放注册功能

勾选”任何人都可以注册”,在页面下方”保存设置”

重新进入站点页面,可以看到注册按钮已被点亮。

p.s.
此时注册新用户并不会收到邮件,因为WordPress发送邮件功能未启用。

二、插件方式实现SMTP发件功能

搜索“WP SMTP”,选择安装“Easy WP SMTP”插件。

三、插件Settings

p.s.

务必确保SMTP服务在管理员邮箱中已开启,outlook邮箱应该默认开启,但sina(smtp.sina.com)和QQ(smtp.qq.com)都是默认关闭的。
SMTP Password一般是独立邮箱密码,但如果开启SMTP服务时给出了一个授权码,则填写授权码。设置完成可以在下方输入用户的邮箱地址进行测试。

四、回到站点页面注册,用户能收到WordPress发送的重置密码的邮件

在收到的重置密码链接中,邮件系统会把url链接末尾的尖括号 ’>’解析成邮件地址,打开后提示“您的密码重设链接无效,请在下方请求新链接”。

解决方法:

(1)修改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');

(2)下载站点中wp-includes文件夹中的pluggable.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->user_login), 'login') . "\r\n\r\n";

 

然后就可以正常接收邮箱设置密码了

本文由来源 CSDN,由 zwwBK 整理编辑,其版权均为 CSDN 所有,文章内容系作者个人观点,不代表 旧时光 对观点赞同或支持。如需转载,请注明文章来源。

发表评论