wordpress文章数据表wp_posts中的post_type字段

打开你的数据库,看看wp_posts表,你就会看到post_type字段,这个字段是干啥用的呢,其实是定义你发布文章的类型,你可以看到每条数据都有一个类型,来表示你的发布的文章是哪种的。

wordpress默认文章类型

wordpress中有如下的几种文章类型。

Post 文章
Page 页面
Attachment 附件
Revision 文章版本
Navigation Menu Item 导航菜单

除了这些默认文章类型,我们还可以通过register_post_type() 函数注册自定义文章类型,这样就可以添加自己想要类型的文章啦。

理解默认文章类型

文章类型 用途 备注
Post 博客文章 核心文章类型
Page 静态页面 用来显示一个内容比较固定的页面,文章可以有父级页面,每个父级页面可以有多个子页面。
Attachment 文章附件 上传到某篇文章的媒体将会附加到这篇文章,作为这篇文章的附件,该媒体的 post_parent 字段将被设置为这篇文章的 ID,在多媒体上传页面上传的媒体没有附加到文章, post_parent  为空,guid 字段用来存储媒体文章的 URL。
Revision 文章版本 每个版本都被附加到一篇文章,版本的post_parent字段为所附加到文章的文章 ID。
Navigation Menu Items 导航菜单 每个菜单都包含若干个导航菜单项目,每个项目被保存为一条文章记录,menu_order 字段用来记录菜单的顺序,其他附加数据,如打开方式、父级菜单保存在 wp_postmeta 数据表中。

如上表所见,post_parent 是一个非常重要的字段,该字段存储着不同文章之间的父子关系,包括:

父级页面和子页面
每个文章的修订版本
附件和附件所附加到的文章
在自定查询中,我们有很多地方需要用到 post_parent 字段,例如:查询指定页面的子页面,下面的例子中 ID 是一个数字,字父级页面的 ID。

‘post_parent’ => ‘ID’
同样,我们也可以使用类似的方式显示附加到一篇文章的所有附件,或者查询没有附加到任何文章的附件(在多媒体管理界面上传的媒体通常没有附加到文章),查询这一类数据,只需要把 post_parent 的值设置为0就可以了:

‘post_parent’ => 0
对修订版本的查询我们不太可能用到,在这里就不多说了。

另外,我们可以使用 post_parent_in ,该参数的值为一个数组,用来查询一组文章或页面的子页面,由此可见理解这个post_type类型可以帮我们做出多种不同类型的文章页面。

 

相关文章

我想将wordpress的默认接口路由改掉,愿意是默认的带一个 wp...
wordpress自定义分类法之后,我看到链接都自动在后面添加了一...
事情是这样的,我用 get_post_type 函数创建了一个自定义分类...
最近网站莫名其妙的被顶上了,过一个多小时,就注册一个账号...
最近服务器要到期了,就想着把网站转移到另外一台服务器,本...
今天在写wordpress的接口,然后碰到个奇怪的问题,怎么访问都...