如何在 WordPress 中创建自定义帖子类型
已发表: 2018-01-31在我们实际向您展示如何创建您自己的自定义帖子类型之前,您将自豪地在新的 WordPress 支持的博客上使用它,让我们看看自定义帖子类型实际上是什么。
帖子类型只是一组规则,用于描述文章中内容的呈现方式。 每个帖子类型都有自己的参数来定义它,因此您可以区分帖子、页面、存档、修订或导航菜单之间的区别。 但是正如您将看到的,如果您开始将文章写成帖子,那么您写的所有内容都将具有相同的结构。 那是因为您将为帖子使用相同的模板。 但是,如果您写一个博客,其中一种帖子类型足以处理您的文章,那完全没问题。
在不长的历史中,WordPress 取得了巨大的发展,它已经超越了它作为博客平台的作用。 它已成为世界上最常用和最受欢迎的内容管理系统之一。 允许人们创建自定义帖子类型是主要原因之一。
让我们在一个简单的示例中看看自定义帖子类型可以为您做什么。 想象一下,您正在运行一个游戏网站。 您想定期发布新闻,每天都会发布大量预告片,您可以与观众分享,您的作者玩新游戏并撰写评论,您想发布最新在线比赛的屏幕截图等。
正如您已经猜到的,在这种情况下您需要多种内容类型,如果您继续使用常规帖子,所有内容看起来都一样,这将使您和您的访问者更难找到不同之处介于视频文章和评论之间。 是的,您想要一个自定义的帖子类型,让一切看起来更有条理。
多停留几秒钟。 如果您创建自定义帖子类型,您的新闻可能会有一个特殊区域,您可以在其中放置指向来源的链接。 您的游戏评论帖子类型可能具有作者对某个游戏(包括基于星级的系统)的评级,并且您可以为评论的副标题应用不同的样式。 您的预告片帖子类型会突出视频,让人们从灯箱中欣赏它,而不是在帖子中观看。 我们可以永远继续下去,但你明白这一点,对吗?
创建自定义帖子类型
好的,我们知道您对我们的谈话感到厌烦了——您在这里学习如何创建自定义帖子,让我们开始吧。 伸展你的肌肉,深呼吸,当你准备好时,让我们开始吧。 如果您有兴趣深入研究 WordPress 和代码,请跳至对您有帮助的插件。
- 打开functions.php文件并粘贴以下代码。
确保代码位于 PHP 结束标记 (?>) 之前,否则将无法工作。
// 创建游戏评论自定义帖子类型
函数 game_reviews_init() {
$args = 数组(
'label' => '游戏评论',
'公开' => 真,
'show_ui' => 真,
'capability_type' => 'post',
'分层' => 假,
'rewrite' => array('slug' => 'game-reviews'),
'query_var' => 真,
'menu_icon' => 'dashicons-video-alt',
'支持' => 数组(
'标题',
'编辑',
'摘抄',
'引用',
'自定义字段',
'注释',
'修订',
'缩略图',
'作者',
'页面属性',)
);
register_post_type('游戏评论', $args);
}
add_action('init', 'game_reviews_init');
- 保存更改
如果您查看 WordPress 中的管理区域,您会注意到菜单上有一个新项目“游戏评论”。 到目前为止,它看起来像任何其他帖子,但您仍然无法在线查看这些帖子。 为了充分利用这种自定义帖子类型,您还需要执行几个步骤。
在尝试新帖子之前,请务必设置永久链接,否则最终会出错。
为您的新自定义帖子类型创建模板:
- 打开您的主题文件夹
- 创建一个新文件并将其命名为 game-review-template.php
- 打开文件并粘贴以下内容:
<?php
/**
* 模板名称:游戏评论
**/
?>
- 打开位于主题文件夹中的 page.php 文件
- 将代码复制并粘贴到您的 game-review-template.php 中
- 找到一段与此相同或相似的代码(可能取决于您的主题):
<?php endif; ?>
<?php endwhile; ?>
找到此部分后,让我们对其进行修改,以便您可以在新页面上显示您的自定义帖子类型。 您应该在循环上方添加$query行,然后修改循环本身。 当你修改代码时,它应该是这样的:
<?php $query = new WP_Query( array('post_type' => '游戏评论','posts_per_page' => 5 ) ); while ( $query->have_posts() ) : $query->the_post(); ?> // 您的代码,例如“the_content();”
- 保存更改
- 转到页面 - >添加新
- 创建一个名为“游戏评论”的页面
- 在右侧的“页面属性”选项卡下,您应该找到“模板”
选择您在前面的步骤之一中创建的模板并将其分配给页面。
- 保存更改
就是这样。 你应该尝试一切并创建一个新的游戏评论帖子。 打开游戏评论页面后,您应该能够看到按时间顺序排列的新闻帖子类型,就像您的普通帖子一样。
而这仅仅是个开始。 您已经创建了自定义帖子类型,但现在您应该按照您喜欢的方式修改它并添加您需要的代码。
使用插件创建自定义帖子类型
当您开始创建自己的帖子类型以扩展 WordPress 时,有两种方法。 我们已经向您展示了一个 – 如何手动创建自定义帖子类型。 通过以下几个步骤,您可以创建自定义帖子类型,但如果您是 WordPress 初学者并且不习惯处理代码,则可能需要花费大量时间。 但是您不必弄乱代码——如果您需要一个更简单、更快捷的解决方案,您可以使用其中一个插件创建无数的自定义帖子类型。
在教程的这一部分中,我们将向您展示最好的插件之一,它将为您创建这些自定义帖子类型。 您无需编写代码,甚至无需复制/粘贴代码。 只需安装插件,写入新帖子类型的名称并通过 GUI 进行设置。
自定义帖子类型 UI
价格:免费
如果你只需要注册一个自定义的帖子类型,这个插件会做得很好。 安装后,您将能够创建自定义帖子类型和分类法。 只需转到新创建的菜单,添加新的自定义帖子类型,然后写下新帖子类型的名称和描述。 就这么简单,但您必须注意这个插件不会处理显示您的新帖子类型。 一旦您注册了新的帖子类型,如何显示它仍然取决于您。 我们建议您查看如何执行此操作或使用其他一些插件也可以显示您的帖子。
结论
即使在今天,自定义帖子类型也是 WordPress 最伟大的功能之一。 通过简单地修改几行代码或使用插件,您可以生成一个对您的站点来说独一无二的帖子类型。 事实是,初学者第一次完成所有内容可能会有点困难,但如果您坚持本教程,您应该不会有任何问题。