0

我在 Buddypress / Wordpress 网站上工作,并使用

get_queried_object()->ID; 

获取用户的 ID,但我在不同的页面上得到不同的结果。我得到了 47、59 和 2。它应该是 1,因为我是管理员。知道为什么它会改变吗?

4

1 回答 1

1

可能您正在寻找 get_current_user_id() 函数,而不是 get_queried_object() 函数。get_queried_object() 检索当前查询的对象。相反,您应该使用 get_current_user_id( )

$user_id = get_current_user_id();
if ($user_id == 0) {
    echo 'You are currently not logged in.';
} else {
    echo 'You are logged in as user '.$user_id;
}

为了获得有关登录用户的信息,请尝试

global $current_user;
get_currentuserinfo();

echo 'Username: ' . $current_user->user_login . "\n";
echo 'User email: ' . $current_user->user_email . "\n";
echo 'User first name: ' . $current_user->user_firstname . "\n";
echo 'User last name: ' . $current_user->user_lastname . "\n";
echo 'User display name: ' . $current_user->display_name . "\n";
echo 'User ID: ' . $current_user->ID . "\n";
于 2012-12-08T10:42:43.040 回答