大家好,之前有一篇文章是寫關于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)
文章來源武漢APP開發?http://www.worldflying.cn/article-id-28.html