WordPress 数据库探究 #2 — wp_posts

WordPress 主要被用作一个博客引擎的内容管理系统(简称 CMS)。所以我认为这个“内容”表是最重要的。静态页面,日志和附件都是内容,WordPress 把它们都放在一个表中 — wp_posts

实际上,附件是被保存在它们原来的位置 — 在磁盘的文件,但是 WordPress 用 wp_posts 表保存附件的元信息,如上传该附件用户的 ID,附件所属日志的 ID,上传的日期等等。

静态页面,日志和附件可以很相似,也可以很不同。现在,我们要看到在它们之间的共同之处。他们都有一个唯一的 ID(通常是 WordPress 或者 MySQL 自动产生的),一个作者(写日志或者上传文件的人),发布日期,题目和秒速(甚至空的,依然有方法日后增加和使用)。它们都有 URL。所以对于每个日志,静态页面和附件,WordPress 把它们存储为 wp_posts 表中的一条数据。

还是一些区分日志,静态页面和附件的方法,为了区分它们,WordPress 使用了 wp_posts 表中的字段 post_type。对于日志,post_type 的值是 ‘post’。对于静态页面 — ‘page’。对于附件 — ‘attachment’。

然后,有些字段简单日志是特殊类型的时候使用。举个例子,字段 post_mime_type 用来存储附件文件类型,如 ‘image/jpeg’ 和 ‘application/pdf’(在 Wikipedia 定义为 MIME )。 字段 menu_order 用来指定静态页面的顺序。字段 post_parent 用来组织静态页面和子页面之间的关系,同样也用作把附件链到日志。

为了得到每个字段是怎们和什么时候使用的更好的图像,看一下每种类型日志的一条真是记录:

SELECT * FROM wp_posts WHERE post_type = ‘post’ LIMIT 1
SELECT * FROM wp_posts WHERE post_type = ‘page’ LIMIT 1
SELECT * FROM wp_posts WHERE post_type = ‘attachment’ LIMIT 1

如果使用的是 MySQL 命令行工具,那么你最好在查询语句的后面中添加 “\G” (”SELECT * FROM wp_posts WHERE post_type=’post’ LIMIT 1 \G”)。这将向你显示更适合阅读的结果。

日志的状态页是保存在这个表中。在大多数情况下,你可以看到 ‘publish’ 为已发布的日志,‘draft’ 为草稿,‘inherit’ 为附件。还有一些选项,你可以从表格说明中学到。

下面是一些你可以只利用 wp_posts 表进行操作的想法:

产生一些统计 — 总共有多日志,每种类别的日志分别有多少,每个作者发表的日志有多少,在一段日期内平均每天有多少篇日志等等。
产生一个所有附件的列表。
给每篇日志产生一个图片廊 (提示:“WHERE post_type = ‘attachment’ AND (post_mime_type = ‘image/jpeg’ OR post_mime_type = ‘image/gif’ OR post_mime_type = ‘image/png’)“)。

下一篇介绍:wp_postmeta 表

标签:WordPress 数据库

本人擅长Ai、Fw、Fl、Br、Ae、Pr、Id、Ps等软件的安装与卸载,精通CSS、JavaScript、PHP、ASP、C、C++、C#、Java、Ruby、Perl、Lisp、Python、Objective-C、ActionScript、Pascal等单词的拼写,熟悉Windows、Linux、OS X、Android、iOS、WP8等系统的开关机。

通过下面的方式来联系我们:

电邮:138762189@qq.com

联系QQ:点击这里给我发消息

官方站:www.tadke.com

※ ※ 联系请加我的企鹅号 ※※

※ ※技术支持请微信联系站长 ※※

Copyright © 2023 Tadke.com. 琼ICP备20000547号