Wordpress $current_user 返回空白

Wordpress $current_user returning blank

我正在尝试在 WordPress 中使用会话,它在我第一次登录时有效,但如果我注销并再次登录,$current_user->user_login returns 空白,谁能帮忙?

function register_session(){
    if(!session_id()){
        session_start();
    }
}
add_action('init','register_session');
function create_session(){
    global $current_user;
    $_SESSION['user'] = $current_user->user_login;
}
add_action('wp_login', 'create_session');

function finish_session(){
    session_destroy();
}
add_action('wp_logout', 'finish_session');

看来我使用了错误的钩子,我更改了代码,现在可以使用了,如果有人需要,请将代码留在这里。

function register_session(){
    if( !session_id() ){
        session_start();
    }
    $id = get_current_user_id();
    $user = get_userdata($id);
    $_SESSION["user"] = $user->user_login;
}
add_action('init','register_session');


//--------------finish the session after logout----------------------------
function finish_session() {
    session_destroy();
}
add_action('wp_logout', 'finish_session');