WordPress 网站由三个主要元素组成:
wp-content
目录的内容,其中包括主题、插件和上传内容大多数 WordPress 用户从未直接接触过数据库,甚至可能不知道它正在不断地填充他们的网站。当 WordPress 提供任何类型的页面时,无论是主页、单个帖子或页面还是存档,它都会访问数据库以显示编辑和管理员已添加到网站的内容。
在本系列教程中,我将详细介绍 WordPress 数据库的不同方面。该系列将分为九部分,涵盖以下内容:
在本介绍中,我将概述数据库表以及它们与您可能习惯在 WordPress 中使用的内容类型的关系,并确定存储内容的位置。
由于数据库表是用来存储内容的,因此在理解它们之前,您需要先了解内容。 WordPress 中有多种类型的内容:
这些内容类型会附加数据:
除此之外,还有其他类型的内容以不同的方式存储:
所有这些类型的内容都存储在数据库中的某个位置(或者偶尔存储在主题或插件文件中,正如我将展示的那样)。他们可能有自己的条目,也可能是另一个条目的一部分(例如编码到帖子中的流内容)。它们还可以链接到其他表中的数据。例如,有关帖子的数据将链接到有关用户的数据,以便 WordPress 知道谁创作了哪些帖子。
WordPress 使用一系列数据库表以及它们之间的关系来最大限度地减少必须存储的数据量 - 这会创建一对多关系。这意味着,一个用户可以拥有许多与其用户记录相关的帖子。它节省了空间 - 如果 WordPress 存储每个用户针对其撰写的每篇帖子的所有用户数据,这将意味着大量重复数据和大量空间。
下图取自 WordPress codex,显示了数据库表及其链接方式:
大多数表格通过一个字段链接到一个或多个其他表格。该字段将是每个记录的唯一标识符,例如 post_id
。此表更详细地显示了这一点:
表 | 已存储的数据 | 链接到 |
---|---|---|
wp_posts |
帖子、页面、附件、修订和导航菜单项 |
wp_postmeta (通过 post_id )
| )
(通过 wp_postmeta ) |
wp_posts (通过 post_id
|
|
wp_comments (通过 | )
wp_posts (通过 post_id
| 评论|
(通过 wp_commentmeta ) |
wp_comments (通过 comment_id
|
|
每条评论的元数据wp_term_relationships
|
(通过 comment_id ) |
wp_posts (通过 post_id
🎜🎜
🎜帖子和分类之间的关系🎜
🎜
🎜 (通过 🎜)🎜
|
wp_term_taxonomy |
分类法(包括类别和标签) |
wp_term_relationships (通过 term_taxonomy_id ) |
wp_terms |
您的类别和标签以及分配给自定义分类法的术语 |
wp_term_taxonomy (通过 term_id (通过 term_id ) |
wp_links |
您博客中的链接(如果您还有的话) |
wp_term_relationships (通过 link_id ) |
wp_users |
用户 |
wp_posts (通过 post_author ) |
wp_user_meta |
每个用户的元数据 |
wp_users (通过 user_id (通过 user_id ) |
wp_options |
站点设置和选项(通过“设置”屏幕以及通过插件和主题设置) | 不适用 |
有几点值得注意:
wp_
前缀。您可以在配置网站时更改此设置,但没有太大价值。wp_posts
表,其中将存储大部分数据。这将(几乎)其他所有内容结合在一起。wp_options
表。此表存储有关网站和 WordPress 安装的数据,这些数据与有关帖子或用户的数据无关。wp_users
和 wp_comments
和 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_posts (如果添加到帖子中)
(如果添加到帖子中) |
|
主题和插件文件(如果硬编码) |
|
您可能已经注意到,并非所有数据库表都包含在该表中。这是因为其中一些用于存储元数据,另一些用于存储关系,这两者将在本系列后面更详细地介绍。
希望您现在能够更好地了解 WordPress 使用数据库结构存储不同类型数据的方式和位置。本系列将更详细地探讨此问题的所有方面。
在下一部分中,我将检查数据之间的关系,并更详细地了解特定表的链接方式以及某些表如何纯粹用于存储有关关系的数据。
以上是掌握 WordPress 中的数据管理的详细内容。更多信息请关注PHP中文网其他相关文章!