WordPress数据库系列:理解和使用WordPress中的数据系列四(用户数据)

这是我参与更文挑战的第14天,活动详情查看: 更文挑战

本篇翻译参考自Understanding and Working with User Data in WordPress
它是理解和使用WordPress中的数据系列的第四篇

理解和使用WordPress中的用户数据

WordPress中在wp_users表中存储用户数据,它链接wp_postswp_comments表:

WordPress也在两个其他表中存储用户数据:

  • 用户额外的元数据存储在wp_usermeta表中
  • 评论中未登录用户的数据存储在wp_comments表中。

WordPress数据系列的当前部分,将会探索WordPress如何存储和如何访问用户数据,首先关注wp_users

wp_users表

wp_users表存储每个用户的核心信息。它包含下面的字段:

字段 存储内容 说明
ID 用户ID——the user ID 自动生成
user_login 用户名——username 必需
user_pass 密码——password 注册时没提供则自动生成
user_nicename 昵称——nickname 如果没有手动输入则自动生成
user_email 邮箱地址——email address 必需
user_url 站点——website 非必需
user_registered 用户首次注册日期和时间 自动生成
user_activation_key 用户激活码 自动生成——在默认的用户注册中,发送用户注册激活通知的函数wp_new_user_notification,会调用get_password_reset_key生成激活码并保存
user_status 状态存储为数字——例如,它告诉WordPress,用户是否通过邮件确认注册。不用于存储用户角色 自动生成
display_name 公开显示的名称 没有手动输入时自动生成

如你所见,除了user_url一个字段以外,所有字段要么在注册时是必填项,要么会自动生成。

用户元数据

除了wp_users中的数据外,还有为所有用户创建但存储在wp_usermeta表中的数据,例如角色和能力(roles and capabilities)。该表还用于存储其他设置以增强用户体验,例如所选的管理后台配色方案以及管理栏和仪表板显示的设置。

当需要通过你的主题或插件创建用户的额外字段时,应该使用wp_usermeta表——并且从不应该向主wp_users表添加字段。

wp_usermeta表中的每个记录有四个字段:

  • ID——记录的ID
  • user_id——链接到哪个wp_users
  • meta_key
  • meta_value

使用add_user_meta()函数创建一个新的用户元数据记录:

add_user_meta( $user_id, $meta_key, $meta_value, $unique );
复制代码

此函数的第四个参数($unique)是可选的,指定meta_key字段中的值是否应该是唯一的。

或使用update_user_meta函数。

添加用户元数据后,可以使用get_user_meta()在每个用户的author页面上将其输出,或创建具有指定key值的所有用户的列表。

在后面的教程中,我将研究元数据和分类法,以更详细地介绍最后一个选项。

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

用户可以链接到两个内容类型:posts和评论。

就posts而言,总会有一个用户作为作者。该关系在wp_postspost_author字段和wp_usersID字段之间。

评论不总是链接到wp_users表:仅在评论者是一个登陆用户时被创建。这种情况下,链接是wp_usersIDwp_commentsuser_ID之间。

如果评论者不是登陆用户,则通过comment_authorcomment_author_emailcomment_author_urlcomment_author_IP字段,将信息直接被记录在wp_comments表中。

概要

用户是Wo​​rdPress安装的基础。没有他们,将没有站点管理员,也没有创建内容的作者。

WordPress将有关用户的核心数据存储在wp_users表中,并且将其他元数据存储在wp_usermeta表。它还将用户数据链接到wp_posts表中的posts和wp_comments表中的comments。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享