您的位置:首页 > 编程语言 > PHP开发

PHP: WordPress 之 在注册界面 实现 注册后密码直接显示在页面上

2017-04-17 18:39 567 查看
前言:

WordPress 功能无疑强大的,但有些功能实现上还是有少许不尽人意,比如在 网站上有新用户注册后,必须下发到用户填写的邮件才能接收到新密码,而密码又是系统自动生成的,如果因为某些原因用户接收不到邮件,造成无法登录的现象,这种用户体验还是有些不好的。所以能在新用户注册后提示生成的密码,这样用户就可以直接登录,不用等到接收到邮件才能登录。~(~ ̄▽ ̄)~

版本信息:WordPress 4.7.3

(网上一些写的注册后显示在 页面上的,大多都是过时的,信息有些对应不上。没办法只能自己摸索了 (๑•̀ㅂ•́)و✧ )



开始更改之前先做一些操作:

wordpress 默认是不允许用户注册的,所以你需要先登录后台打开这个功能:



下面是实现过程:

首先,你需要先找到这两个文件 wp-login.php, user.php (/wp-includes/user.php)

1.在 wp-includes/user.php –>function register_new_user(){} 下找到 这行代码:

update_user_option( $user_id, 'default_password_nag', true, true ); //Set up the Password change nag.


在其下面添加这句

// 把注册的用户名和随机生成的密码写进 cookie
setcookie("u",$user_login);
setcookie("user_pass",$user_pass);


(注意:目前 WordPress 4.7.3 版本 是在/wp-includes/user.php 路径下的)

2.在 wordpress 根目录下 找到这个文件 wp-login.php

然后找到这句代码:

$errors->add('re
4000
gistered', __('Registration complete. Please check your email.'), 'message');


然后替换成下面的代码:

// 读取 注册后写进 cookies 的用户名 和密码
$errors->add('registered', __('注册成功!用户名:'.$_COOKIE["u"].' 密码:'.$_COOKIE["user_pass"].'(登录后自行修改成便于你记忆的密码)'), 'message');


嗯,这样就能实现注册后,在界面上显示 新注册的用户名和密码了。

效果显示:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐