get_userdata 获取用户数据

Posted in:
Update time:2020-10-27

函数描述

获取某个用户的用户数据,数据形式为一个 WP_User 对象,我们可以通过 “->” 操作符直接获取 wp_users 和 wp_usermeta 数据表里面的信息。

如果用户不存在,返回 false,该函数的一个别名是: get_user_by(‘id’)。

Usage

get_userdata( $userid ); 

function parameter

parametersdata typeRequired or notdescriptivedefault value
$user_idinteger (math.)be需要获取信息的用户IDnot have

return value

(bool|object) 如果失败,返回False, 如果成功,返回一个 WP_User 对象

usage example

基本使用方法

get_userdata() 函数返回一个包含用户数据的对象,我们可以获取对象中的某个数据,或者遍历对象里的所有数据并显示。

显示某些用户数据:

$user_info = get_userdata(1);

echo '用户名: ' . $user_info->user_login . "\n";
echo '用户角色: ' . implode(', ', $user_info->roles) . "\n";
echo '用户 ID: ' . $user_info->ID . "\n";

以上代码的结果:

  • 用户名: admin
  • 用户角色: administrator
  • 用户 ID: 1

我们也可以把相应的数据赋给某个变量,以便在其他地方使用。

$user_info = get_userdata(1);
$username = $user_info->user_login;
$first_name = $user_info->first_name;
$last_name = $user_info->last_name;

echo "$first_name $last_name 的用户名为:$username.";

以上代码的结果: Amos Lee 的用户名为:amoslee

访问 Usermeta 数据

$user_info = get_userdata(1);

echo $user_info->last_name .  ", " . $user_info->first_name . "\n";

以上代码的结果: Amos, Lee

caveat

以下是 wp_users 和 wp_usermeta 数据表中的一些常用数据,我么可以通过这个函数在主题或插件中调用:

  • users
    • ID
    • user_login
    • user_pass
    • user_nicename
    • user_email
    • user_url
    • user_registered
    • display_name
  • user_meta
    • first_name
    • last_name
    • nickname
    • description
    • wp_capabilities (数组)
    • admin_color (管理页面的配色方案,默认为:fresh)
    • closedpostboxes_page
    • primary_blog
    • rich_editing
    • source_domain

注意: WP_User 对象使用 PHP 5 魔法函数提供一些属性,如: $user_info->user_login 是 $user_info->data->user_login的快捷方式, $user_info->rich_editing 是 get_user_meta($user_info->ID, ‘rich_editing’, true). 的快捷方式。

We offer WordPress Themes and Plugins Custom Development Services

This site has long undertaken WordPress themes, plugins, WooCommerce-based store mall development business. We have 10 years of experience in WordPress development, if you want to Developing Websites with WordPress, please contact WeChat: iwillhappy1314 or email: amos@wpcio.com for inquiries.

3 thoughts on “get_userdata 获取用户数据

发表回复

Your email address will not be published. 必填项已用 * 标注

*