WordPress 数据库结构及表字段作用解析

张子凡 WordPress优化 2018-01-09 15:08:07 阅读(...) 评论(11)

对于WordPress的开发可以说子凡已经是如痴如醉了,通过WordPress本身的开放性接口可以做到很多的事情,但是有些时候我们可能更喜欢直接查询数据库来实现某些WordPress没有提供的函数来实现目的,所以这时候我们就需要对WordPress数据库的结构和字段作用需要了解,这样才有利于做深度的使用和开发。

WordPress数据库结构

子凡今天之所以想着要整理一份WordPress数据库表结构的详细说明,其实是因为有想考虑在WordPress的某张表里新增一个字段,来实现某些特殊的定制化数据的存储,虽然数据表中的字段命名都非常规范和准确,大多数通过字段名就可以知道是什么作用,不过其中有些字段还真不知道具体用处,就显得非常的尴尬了,所以就通过WordPress官方和,整理出来,方便自己以后的使用和提供给大家有个参考。

WordPress 数据表作用介绍

首先分别来先看看WordPress所有的数据表都是干什么用的吧,一下是WordPress完整的12张数据表,当然刚安装好的时候一般是只有11张表的,如果还有其它相关的数据库,那么可能就不是WordPress本身的数据库,有可能是某些主题或插件需要而创建的,所以一下肯定子凡要介绍的还是WordPress本身的数据库表和字段了。

  1. wp_commentmeta:存储Akismet或手工审核的评论是否为垃圾评论的判断结果;
  2. wp_comments:存储评论信息,如评论内容、评论所属文章、评论人昵称、邮箱、URL等;
  3. wp_links:存储友情链接信息,如友链名称、URL、打开方式、描述、是否可见等;
  4. wp_options:存储WordPress系统默认及后台系统选项、插件及主题配置信息,包括网站标题、副标题、当前主题等等;
  5. wp_postmeta:存储文章的一些相关信息,如文章附件图片的alt信息、文章所在分类的URL以及文章自定义的自定义字段,其中可能就有文章访问次数等;
  6. wp_posts:存储文章信息,包括文章标题、正文、摘要、作者、发布时间、访问密码、评论数、修改时间、文章地址等;
  7. wp_termeta:存储对菜单分类的更多设置,属于开发性功能居多,例如分类目录的缩略图、颜色标识等;
  8. wp_terms:存储菜单分类、标签分类名称及URL信息;
  9. wp_term_relationships:存储文章和分类、标签的相互对应关系;
  10. wp_term_taxonomy:存储分类和标签的描述信息、父子关系、所属包含的文章数等;
  11. wp_usermeta:存储用户的姓名、昵称、权限等信息;
  12. wp_users:存储用户名、密码、昵称、邮箱、注册时间等信息;

wp_commentmeta

  • meta_id:自增唯一ID
  • comment_id:评论ID
  • meta_key:键名
  • meta_value:键值

wp_comments

  • comment_ID:自增唯一ID
  • comment_post_ID:对应文章ID
  • comment_author:评论者
  • comment_author_email:评论者邮箱
  • comment_author_url:评论者网址
  • comment_author_IP:评论者IP
  • comment_date:评论时间
  • comment_date_gmt:评论时间(GMT+0时间)
  • comment_content:评论正文
  • comment_karma:未知
  • comment_approved:评论是否被批准
  • comment_agent:评论者的USER AGENT
  • comment_type:评论类型(pingback/普通)
  • comment_parent:父评论ID
  • user_id:评论者用户ID(未登录用户的评论则为空

wp_links

  • link_id:自增唯一ID
  • link_url:链接URL
  • link_name:链接标题
  • link_image:链接图片
  • link_target:链接打开方式
  • link_description:链接描述
  • link_visible:是否可见(Y/N)
  • link_owner:添加者用户ID
  • link_rating:评分等级
  • link_updated:未知
  • link_rel:XFN关系
  • link_notes:XFN注释
  • link_rss:链接RSS地址

wp_options

  • option_id:自增唯一ID
  • blog_id:博客ID,用于多用户博客,默认0
  • option_name:键名
  • option_value:键值
  • autoload:WordPress加载时自动载入(yes/no)

wp_postmeta

  • meta_id:自增唯一ID
  • post_id:对应文章ID
  • meta_key:键名
  • meta_value:键值

wp_posts

  • ID:自增唯一ID
  • post_author:对应作者ID
  • post_date:发布时间
  • post_date_gmt:发布时间(GMT+0时间)
  • post_content:正文
  • post_title:标题
  • post_excerpt:摘录
  • post_status:文章状态(publish/auto-draft/inherit等)
  • comment_status:评论状态(open/closed)
  • ping_status:PING状态(open/closed)
  • post_password:文章密码
  • post_name:文章缩略名
  • to_ping:未知
  • pinged:已经PING过的链接
  • post_modified:修改时间
  • post_modified_gmt:修改时间(GMT+0时间)
  • post_content_filtered:未知
  • post_parent:父文章,主要用于PAGE
  • guid:唯一标识符(短链接)
  • menu_order:排序ID
  • post_type:文章类型(post/page等)
  • post_mime_type:MIME类型
  • comment_count:评论总数

wp_termeta

  • meta_id:自增唯一ID
  • term_id:分类ID
  • meta_key:键名
  • meta_value:键值

wp_terms

  • term_id:分类ID
  • name:分类名
  • slug:缩略名
  • term_group:分组

wp_term_relationships

  • object_id:对应文章ID/链接ID
  • term_taxonomy_id:对应自定义分类ID
  • term_order:排序

wp_term_taxonomy

  • term_taxonomy_id:自定义分类ID
  • term_id:分类ID
  • taxonomy:分类(category/post_tag)
  • description:分类描述
  • parent:所属父分类ID
  • count:文章数统计

wp_usermeta

  • umeta_id:自增唯一ID
  • user_id:对应用户ID
  • meta_key:键名
  • meta_value:键值

wp_users

  • ID:自增唯一ID
  • user_login:登录名
  • user_pass:密码
  • user_nicename:昵称
  • user_email:Email
  • user_url:网址
  • user_registered:注册时间
  • user_activation_key:激活码
  • user_status:用户状态
  • display_name:显示名称

写在最后

以上便是子凡参考WordPress官方和实际WordPress数据库而整理并标注的一些信息,其中有些数据表中的字段无法确定,或者其中有些字段在新版的WordPress中已经几乎未在使用,例如wp_users表中的user_status用户状态字段就没有使用。所以以上内容仅供简单查阅和参考,并且子凡也无法保证时刻与WordPress最新版本保持一致,当然如果你有新的发现或者不同,欢迎在泪雪博客本文底部留言,子凡验证后可以做及时更新。

更多关于WordPress优化及疑问可以添加QQ群:255308000

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/wordpress-database.html

发表评论

  1. 罗汉也
    1楼
    罗汉也 2019年05月

    总结的不错

    • 张子凡
      回复
      张子凡 2019年05月
      回复 @罗汉也 :主要是自己经常需要用到,哈哈哈
  2. 怕了wp
    2楼
    怕了wp 2019年01月

    改WordPress太痛苦了,看半天也不知看什么,都是函数调用来调用去,大多数变量都是全局的,看什么都是找个半天也找不出哪里来的,我换个框架写,好了,现在又是对应的值又不知保存在哪个表哪个字段,搜也搜不出来,看代码看不出来……

    • 张子凡
      回复
      张子凡 2019年01月
      回复 @怕了wp :说明你还没有了解到看WordPress代码的技巧。
  3. Strange
    3楼
    Strange 2018年10月

    term_id 是标签吧 看了半天才对比出来

  4. 痕痕
    4楼
    痕痕 2018年05月

    特色图片对应那个字段呢

    • 张子凡
      回复
      张子凡 2018年05月
      回复 @痕痕 :wp_postmeta表中的meta_key值为_wp_attached_file就是特色图片,post_id为对于的文章ID即可获取,meta_value就是图片路径,前面加上文件的完整URL地址即可。
  5. 明月登楼
    5楼
    明月登楼 2018年01月

    WordPress在代码架构上绝对是相当的先进!

    • 张子凡
      回复
      张子凡 2018年01月
      回复 @明月登楼 :是的,符合我对极简极致的追求
  6. Fanly
    6楼
    Fanly 2018年01月

    你好子凡,这是我在泪雪博客小程序上的评论测试!

    • 张子凡
      回复
      张子凡 2018年01月
      回复 @Fanly :你好,这是我通过泪雪博客站点后台回复的评论,能收得到微信评论回复通知吗?