大家好,之前有一篇文章是写关于wordpress直接操作数据库的,但是当遇到需要快速开发的时候,不适合自己搭建数据库,直接使用wordpress的数据库是最快的开发方式。
下面我就先介绍一下常用的wordpress模板函数中关于注册登录以及退出登录的函数。
一、注册函数。
所谓注册,就是新建用户,wp_insert_user();
常用参数有
- $args = array(
- 'user_login' => $username,//登录用户名
- 'user_pass' => $password,//登录密码
- 'user_email' => $email,//用户的邮箱,注意,邮箱必须唯一,所有用户不能重复
- 'display_name' => $display_name,//显示名
- 'role' => $role,//用户角色
- 'description' => $description//用户描述
- );
如果注册成功,会返回用户ID,如果注册失败会返回wp_error对象。
- $args = array(
- 'user_login' => "worldflying",
- 'user_pass' => "worldflying",
- );
- $res = wp_insert_user($args);
- if(is_wp_error($res)) {
- wp_die($res -> get_error_message());
- }
下面有一段很简单的示例:
二、登录用函数
登录所使用的函数是wp_signon()
- $creds = array(
- 'user_login' => $username,//用户名
- 'user_password' => $password,//密码
- 'remember' => true//是否记住登录状态
- }
如果注册成功,会返回wp_user对象,如果注册失败会返回wp_error对象。
下面有一段很简单的示例:
- $creds = array(
- 'user_login' => "worldflying",
- 'user_password' => "worldflying",
- 'remember' => true
- }
- $user = wp_signon( $creds, false );
- if ( is_wp_error($user)) {
- wp_die($user -> get_error_message());
- }
三、判断当前是有有用户登录
这个函数比较简单,就是is_user_logged_in(),如果返回true,就说明当前有用户登录,否则返回false。
- if(is_user_logged_in()) {
- echo '当前有用户登录';
- } else {
- echo '当前没有用户登录';
- }
四、获取当前登录用户的信息
在用户登录的情况下,直接执行wp_get_current_user(),获取返回值即可。
需要注意的是,这个函数无论是否用户有登录,返回的都是wp_user类型,只是如果当前没有用户登录,返回的wp_user类的userid为0。
通常这个函数与判断用户是否登录的函数结合使用,如:
通常这个函数与判断用户是否登录的函数结合使用,如:
- if(is_user_logged_in()) {
- $user = wp_get_current_user();
- }
- echo '用户登录名: ' . $user->user_login . "/n";
- echo '用户电子邮箱: ' . $user->user_email . "/n";
- echo '用户显示名: ' . $user->display_name . "/n";
- echo '用户ID' . $user->ID . "/n";
五、注销用户
注销用户这个函数也比较简单,甚至不需要判断他是否执行成功。
wp_clear_auth_cookie();
其实原理很简单,wordpress是通过cookie获取登录信息的。所以清除了所有相关cookie,也就退出登录了。
六、删除用户
这个函数比较特殊,他无法直接使用,需要先引入相关的库。
require("wp-admin/includes/user.php");
wp_delete_user($userid)
新闻热点
疑难解答
图片精选