zoukankan      html  css  js  c++  java
  • 深入理解 WordPress 数据库中的用户数据 wp_user

    WordPress 使用 wp_users 数据表存储用户的主要数据,该数据表结构类似于wp_posts 和 wp_comments 数据表,存储的是需要经常访问的用户数据,该数据表的结构以及该数据表与其他数据表的关系如下:

    WordPress 用户数据表关系WordPress 用户数据表关系(点击查看大图)

    同时,WordPress 把一些附加用户数据保存在了其他数据表中,包含附加用户数据的有以下两个数据表:

    • 附加用户属性数据保存在 wp_usermeta 数据表中。
    • 在评论中,未登录用户的数据保存在wp_comments数据表中。

    接下来,我们来看一下怎么访问这些数据。

    wp_users 数据表

    wp_users 数据表中存储着关于每个用户的核心数据,该数据表的字段如下:

    字段存储内容注意事项
    ID 用户 ID 自增
    user_login 用户名 必需
    user_pass 密码 如果没有填写,则自动生成
    user_nicename 昵称 如果没有填写,则自动生成
    user_email 邮件地址 必需
    user_url 网址 非必须
    user_registered 用户注册的日期和时间 自动生成
    user_activation_key 用户激活密钥 自动生成
    user_status 以数字保存的用户状态,表示用户是否已经通过邮件确认注册。 自动生成
    display_name 公开显示为名称 如果没有填写,则自动生成

    如上表所示,除了一个字段 (user_url) ,其他字段要么是必须填写的,要么就是自动生成的。

    用户元数据表

    和 wp_users中的数据一样, 一些不是经常访问的数据存储在wp_usermeta 数据表中,如用户色角色和权限。 该数据表同时也用来存储一些附加设置用来提高用户体验,其中包括管理界面配色方案,是否显示管理工具条等设置。

    当我们需要通过主题或插件为用户添加附加数据时,我们应该使用这个数据表,而不是在 wp_users 数据表中添加字段,因为该数据表的结构可能会随着 WordPress 升级而变化。。

    wp_usermeta 数据表包含的字段。

    • ID – 自增 ID
    • user_id –  连接到 wp_users
    • meta_key – 字段的键
    • meta_value – 字段的值

    如果需要创建 user_meta 数据,我们可以使用add_user_meta() 函数:

    add_user_meta( $user_id, $meta_key, $meta_value, $unique );
    

    其中,第四个参数($unique) 为可选项,指示这个用户字段是否是唯一。

    一旦添加了 user_meta 数据,我们可以通过 get_user_meta() 函数访问并输出这个数据。

    关于用户字段的创建和访问,涉及到元数据的操作,我将会另外写一篇文章来详细介绍,在这里就不多说了。

    用户和其他内容之间的关系

    用户可以和两种类型的数据关联起来:文章和评论。在文章中,一篇文章总是有一个作者,这种关系的体现是通过 wp_posts 数据表中post_author字段来实现的,该字段的值就是该文章作者的用户 ID。

    评论并不总是连接到 wp_users 数据表:只有当已登录用户发表评论时,这种关系才能建立,这种关系是通过 wp_commerts 数据表中,user_id字段来实现的。

    如果评论者没有登录,评论者信息将被存储在 wp_comments 数据表中,这些数据包括:comment_author,comment_author_emailcomment_author_url 和 comment_author_IP 字段。

    总结

    用户是一个 WordPress 站点的必需数据,没有用户,我们就没办法通过仪表盘管理站点,没办法发布文章。

    WordPress 把用户核心数据存储在 wp_users 数据表中,附加数据存储在 wp_usermeta 数据表中,并且在 wp_posts数据表中连接用户数据到文章、在 wp_comments 数据表中连接用户数据到评论。

    转:https://www.wpzhiku.com/understanding-working-user-data-wordpress/

  • 相关阅读:
    设计模式(18)>职责链模式 小强斋
    设计模式(17)>中介者模式 小强斋
    设计模式(16)>原型模式 小强斋
    设计模式(20)>状态模式 小强斋
    设计模式(15)>桥接模式 小强斋
    设计模式(18)>职责链模式 小强斋
    堆栈的工作原理
    掌握udev
    Qt Model/View 学习笔记 (七)
    Qt Model/View 学习笔记 (六)
  • 原文地址:https://www.cnblogs.com/kenshinobiy/p/7465969.html
Copyright © 2011-2022 走看看