wordpress解决用户注册邮件发不出的问题

乔飞强 WordPress评论9,0371字数 1291阅读模式

前段时间,我网站开放wordpress用户注册,测试了一下,居然出现这种情况:我注册成功了,wordpress数据库里有了新用户信息,后台用户列表中也有了新添加的用户,但是,注册的邮箱没有获取到我网站发送的注册成功的信息。

后经多方查询,有的说要修改wordpress程序/wp-include/class-smtp.php文件的源代码,有的说只需要安装一个Easy WP SMTP插件并配置一下就可以解决。但是,我测试了一下,代码改过,插件也安装过,问题依然没有解决,这说明,并不是wordpress程序本身的问题。

不是wordpress本身的问题,那就有可能是邮箱的问题。会不会是邮箱没有开启SMTP功能。进注册邮箱一查,还真是邮箱没有开启这个SMTP功能。下面把wordpress开放注册的整个流量演示一下。

第一步:wordpress网站后台开放注册功能。

进入后台 => 设置 => 常规 => 勾选  任何人都可以注册  ,如下图:

wordpress解决用户注册邮件发不出的问题-图片1

 

第二步:开通wordpress网站管理员的邮箱的SMTP功能

wordpress网站管理员邮箱,也就是当初创建wordpress网站时注册的邮箱。我这里用的是QQ邮箱,所以下面以QQ邮箱为例。

进入你的QQ邮箱(如果是其它邮箱也类似),点击 设置 => 帐户 =>  POP3/SMTP服务 => 开启,如下图:

wordpress解决用户注册邮件发不出的问题-图片2

 

如上图,然后,向下拉,找到POP3/IMAP/SMTP这里,点击“开启”按钮,如下图:

wordpress解决用户注册邮件发不出的问题-图片3

 

点击开启后,会再弹出一个手机验证,如下图:

wordpress解决用户注册邮件发不出的问题-图片4

 

用手机发送上面的短信后,页面会弹出如下图:

 

这里是QQ邮箱给我们的SMTP授权码,记下这个授权码,这个在下面的wp-mail-smtp插件设置中会用到这个授权码,好像只有QQ邮箱是用授权码,其它邮箱是用密码,这点我没有验证过。

第三步:安装wp-mail-smtp插件:

wordpress解决用户注册邮件发不出的问题-图片5

安装wp-mail-smtp 或 easy wp smtp 插件都可以,2个插件的设置都差不多。如何安装插件这里就不多说了。

下面来看看wp-mail-smtp插件的设置:

wordpress解决用户注册邮件发不出的问题-图片6wordpress解决用户注册邮件发不出的问题-图片6

 

上图中标红的地方都要填写,QQ邮箱的端口是 25,邮箱填写的是管理员邮箱,密码的地方填写的是QQ邮箱的授权码。

这样,我们就开启了邮箱的SMTP功能。到这里,wordpress注册用户注册成功后,管理员邮箱就会发送一个激活邮件到新注册用户的邮箱里。

第四步:解决激活邮件链接无效的问题

经我测试了一下,又出现了一个问题:发送的激活邮件链接无效,如下图(会多出一个 < ):

wordpress解决用户注册邮件发不出的问题-图片7

 

点击这上链接后,会进入如下图的界面:

 

wordpress解决用户注册邮件发不出的问题-图片8

提示“你的密码重设链接无效”。经百度后,才了解这是wordpress的一个小bug,需要修改一下wordpress程序的wp-includes文件夹中的pluggable.php文件的一句代码(大概1899行如下图),把代码中的 < 和 > 去掉:

wordpress解决用户注册邮件发不出的问题-图片9

 

这时候,新用户注册成功后,点击邮件中的链接会跳到重置密码页面,如下图:

wordpress解决用户注册邮件发不出的问题-图片10

 

到这里,我们wordpress网站开放注册才算是全部结束。注册成功后,wordpress会发送一个随机密码给新注册用户,在上图中的输入框中显示,新用户可以在上图这个页面重新设置自己的密码。

继续阅读
我的微信
这是我的微信扫一扫
weinxin
我的微信
我的微信公众号
我的微信公众号扫一扫
weinxin
我的公众号
 
乔飞强
  • 网站侵权说明: 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长QQ1134652417删除处理。

发表评论