WordPress 用户信息
像素鱼丸
11-22
135
0

在 WordPress 中,获取用户信息主要通过几个核心函数和类来实现。以下是常见的用于获取用户信息的函数和类,适用于不同场景:


? 一、常用函数(Functions)

1. get_current_user_id()

  • 作用:获取当前登录用户的 ID。
  • 返回值:整数(用户ID),未登录时返回 0。
  • 示例
    
    $user_id = get_current_user_id();

2. wp_get_current_user()

  • 作用:获取当前登录用户的对象(WP_User 实例)。
  • 返回值WP_User 对象。
  • 示例
    
    $current_user = wp_get_current_user();
    echo '用户名:' . $current_user->user_login;
    echo '邮箱:' . $current_user->user_email;

3. get_user_by( $field, $value )

  • 作用:根据字段(如 ID、login、email)获取用户对象。
  • 参数
    • $field:可以是 'id', 'login', 'email', 'slug' 等。
    • $value:对应字段的值。
  • 返回值WP_User 对象或 false。
  • 示例
    
    $user = get_user_by('id', 1);
    if ($user) {
        echo $user->user_login;
    }

4. get_userdata( $id )

  • 作用:根据用户 ID 获取用户数据。
  • 返回值stdClass 对象(包含用户信息)。
  • 示例
    
    $user_data = get_userdata(1);
    echo $user_data->user_login;

5. get_users( $args )

  • 作用:获取多个用户,支持多种查询条件。
  • 参数:数组形式,支持 role, meta_key, meta_value, number, offset 等。
  • 返回值:包含 WP_User 对象的数组。
  • 示例
    
    $users = get_users(array(
        'role' => 'author',
        'number' => 5,
    ));
    foreach ($users as $user) {
        echo $user->display_name;
    }

? 二、核心类(Classes)

1. WP_User

  • 作用:表示一个 WordPress 用户对象。
  • 常用属性
    • ID:用户 ID
    • user_login:用户名
    • user_email:邮箱
    • display_name:显示名称
    • user_nicename:友好名称
    • user_registered:注册时间
    • roles:角色列表(数组)
  • 示例
    
    $user = new WP_User(1);
    echo $user->display_name;

2. WP_User_Query

  • 作用:更灵活地查询用户,支持复杂条件。
  • 示例
    
    $args = array(
        'role' => 'subscriber',
        'orderby' => 'registered',
        'order' => 'ASC'
    );
    $user_query = new WP_User_Query($args);
    $users = $user_query->get_results();
    foreach ($users as $user) {
        echo $user->display_name;
    }

? 三、其他相关函数

1. is_user_logged_in()

  • 作用:判断当前用户是否已登录。
  • 返回值:布尔值。
  • 示例
    
    if (is_user_logged_in()) {
        // 用户已登录
    } else {
        // 用户未登录
    }

2. wp_logout_url()

  • 作用:生成退出链接。
  • 示例
    
    echo '<a href="' . wp_logout_url() . '">退出</a>';

✅ 四、常见用户信息字段

字段名 说明
ID 用户唯一 ID
user_login 用户名
user_pass 密码(加密存储)
user_nicename 友好名称
user_email 邮箱
user_url 用户网站
user_registered 注册时间(UTC 时间)
user_activation_key 激活密钥(用于注册激活)
user_status 用户状态(0=正常,1=停用)
display_name 显示名称
roles 用户角色(如:subscriber, editor, administrator)

? 五、使用示例汇总


// 获取当前用户
$current_user = wp_get_current_user();
if ($current_user->exists()) {
    echo '欢迎 ' . $current_user->display_name;
    echo ',您的邮箱是:' . $current_user->user_email;
}
// 获取所有管理员
$admins = get_users(array('role' => 'administrator'));
foreach ($admins as $admin) {
    echo $admin->user_login . '<br>';
}

? 六、参考文档


如果你有特定的用途(比如获取某个角色的用户、获取用户元数据等),我也可以提供更具体的代码示例!

收藏
打赏
HTML元素中 title和alt 属性的区别
上一篇
WordPress 的用户角色和权限
下一篇

发表评论

注册不是必须的

像素鱼丸
150 文章
0 评论
4 喜欢
最新文章

宝塔 Nginx 拦截了 WordPress 返回 404 的状态

REST api 接口中,有段代码返回404,但是没有正常返回错误json: $wp_response = new \WP_REST_Response(array('error'=>'没有找到数据')); $wp_response->set_status(404); return $wp_response; 返回内容是: <html> <head><tit […]

Mirage 主题 v2.93.0 发布

更新内容: refactor 移除图片高宽比开关 refactor 移除全局的TOC生成开关 refactor 优化 header.php 中的seo模块和样式覆盖 feat 主题启用的时候,移除非当前主题注册的小工具 fix 修复分类小工具的bug feat 管理员打开后台,检查最当前设置首页布局的模块,如果缺少最新模块,就添加到隐藏模块列表中 fix 优化链接卡片样式 fix 优化热门文章样式 […]

如何使用 WordPress Setting API

使用 WordPress 的 Setting API 是在插件或主题中创建和管理设置页面的标准方式。它提供了一种结构化、安全的方式来保存和获取用户配置的选项。 ✅ 一、Setting API 简介 WordPress 的 Setting API 允许你: 创建设置页面(Settings Page) 注册设置字段(Settings Field) 验证和保存设置数据 使用表单提交来更新设置 ✅ 二、基 […]

详解 WordPress 的评论设置

好的,我们来详细梳理并总结 WordPress 中关于文章评论的两个核心控制层级:全局设置和单篇设置。理解这两者的关系(优先级)是管理网站评论的关键。 1. 全局设置 (Global Settings) —— 网站的“默认规则” 这是整个网站评论系统的总开关和默认行为准则。它决定了新发布的文章默认是什么样子的。 位置:WordPress 后台仪表盘 -> 设置 (Settings) -> […]
生成中...
扫描二维码
扫描二维码
用户登录