掌握WordPress中的数据管理

   2025-07-19 admin00100

wordpress网站由三个主要元素组成:

  1. WordPress安装本身
  2. wp-content目录的内容,其中包括主题、插件和上传内容
  3. 数据库,存储所有内容。

大多数WordPress用户从未直接接触过数据库,甚至可能不知道它正在不断地填充他们的网站。当WordPress提供任何类型的页面时,无论是主页、单个帖子或页面还是存档,它都会访问数据库以显示编辑和管理员已添加到网站的内容。

在本系列教程中,我将详细介绍WordPress数据库的不同方面。该系列将分为九部分,涵盖以下内容:

  1. 简介
  2. 数据之间的关系
  3. 内容类型
  4. 用户数据
  5. 元数据
  6. 分类法、类别、标签和术语
  7. 分类法与帖子元数据
  8. 选项表
  9. WordPress多站点数据

在本介绍中,我将概述数据库表以及它们与您可能习惯在WordPress中使用的内容类型的关系,并确定存储内容的位置。

WordPress中的内容类型

由于数据库表是用来存储内容的,因此在理解它们之前,您需要先了解内容。WordPress中有多种类型的内容:

  • 帖子
  • 页面
  • 自定义帖子类型
  • 附件
  • 链接
  • 导航菜单项(存储为单独的帖子)

这些内容类型会附加数据:

  • 类别
  • 标签
  • 自定义分类法和术语
  • 发布元数据

除此之外,还有其他类型的内容以不同的方式存储:

  • 小部件
  • 选项
  • 用户
  • 站点(用于多站点安装)
  • 硬编码内容(添加到您的主题或插件中)
  • 来自其他地方的内容(通过Feed、流媒体或其他技术访问的第三方内容)

所有这些类型的内容都存储在数据库中的某个位置(或者偶尔存储在主题或插件文件中,正如我将展示的那样)。他们可能有自己的条目,也可能是另一个条目的一部分(例如编码到帖子中的流内容)。它们还可以链接到其他表中的数据。例如,有关帖子的数据将链接到有关用户的数据,以便WordPress知道谁创作了哪些帖子。

WordPress数据库结构

WordPress使用一系列数据库表以及它们之间的关系来最大限度地减少必须存储的数据量-这会创建一对多关系。这意味着,一个用户可以拥有许多与其用户记录相关的帖子。它节省了空间-如果WordPress存储每个用户针对其撰写的每篇帖子的所有用户数据,这将意味着大量重复数据和大量空间。

下图取自WordPresscodex,显示了数据库表及其链接方式:

大多数表格通过一个字段链接到一个或多个其他表格。该字段将是每个记录的唯一标识符,例如post_id。此表更详细地显示了这一点:

已存储的数据链接到
wp_posts帖子、页面、附件、修订和导航菜单项wp_postmeta(通过post_id)

wp_term_relationships(通过post_id)

wp_postmeta每个帖子的元数据wp_posts(通过post_id)
wp_comments评论wp_posts(通过post_id)
wp_commentmeta每条评论的元数据wp_comments(通过comment_id)
wp_term_relationships帖子和分类之间的关系wp_posts(通过post_id)

wp_term_taxonomy(viaterm_taxonomy_id)

wp_term_taxonomy分类法(包括类别和标签)wp_term_relationships(通过term_taxonomy_id)
wp_terms您的类别和标签以及分配给自定义分类法的术语wp_term_taxonomy(通过term_id)
wp_links您博客中的链接(如果您还有的话)wp_term_relationships(通过link_id)
wp_users用户wp_posts(通过post_author)
wp_user_meta每个用户的元数据wp_users(通过user_id)
wp_options站点设置和选项(通过“设置”屏幕以及通过插件和主题设置)不适用

有几点值得注意:

  • 默认情况下,数据库表具有wp_前缀。您可以在配置网站时更改此设置,但没有太大价值。
  • 核心表是wp_posts表,其中将存储大部分数据。这将(几乎)其他所有内容结合在一起。
  • 只有一张表未附加到任何其他表-wp_options表。此表存储有关网站和WordPress安装的数据,这些数据与有关帖子或用户的数据无关。
  • 两个表用于存储有关分类法的数据-本系列稍后将更详细地解释这些数据。
  • wp_users和wp_comments表没有链接-尽管可以指定用户必须注册才能发表评论,但WordPress实际上并不存储有关评论的数据针对每个发布它们的用户。
  • 多站点安装将有一些额外的表。我没有在此处包含这些内容,因为这超出了本教程的范围。

将内容链接到数据库表

查看了WordPress中的内容类型以及用于存储它们的数据库表后,将两者进行匹配可能会有所帮助。下表显示了使用哪个数据库表来存储每种类型的内容。

内容类型
帖子wp_posts
页面wp_posts
自定义帖子类型wp_posts
附件wp_posts
链接wp_links
导航菜单项wp_posts
类别wp_terms
标签wp_terms
自定义分类法wp_term_taxonomy
分类术语wp_terms
发布元数据wp_post_meta
小部件wp_options
选项wp_options
用户wp_users
硬编码内容wp_posts(如果添加到帖子)

wp_options(如果添加到小部件)

主题和插件文件(如果硬编码)

第三方内容wp_posts(如果添加到帖子中)

wp_options(如果通过小部件或插件添加)

主题和插件文件(如果硬编码)

您可能已经注意到,并非所有数据库表都包含在该表中。这是因为其中一些用于存储元数据,另一些用于存储关系,这两者将在本系列后面更详细地介绍。

摘要

希望您现在能够更好地了解WordPress使用数据库结构存储不同类型数据的方式和位置。本系列将更详细地探讨此问题的所有方面。

在下一部分中,我将检查数据之间的关系,并更详细地了解特定表的链接方式以及某些表如何纯粹用于存储有关关系的数据。

 
举报收藏 0打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  版权声明  |  网站地图  |  RSS订阅
Powered By DESTOON