WordPress 可以显示很多不同类型的内容,但组织这些内容可能很困难。默认选项相当有限,自定义它们可能会造成混淆。这就是为什么我决定整理这份简短指南的原因。

通过使用自定义帖子类型,您可以创建包含不同数据集的新型项目(例如帖子和页面)。它将有自己的管理菜单、自己的编辑页面、自己的自定义分类法和许多其他实用程序。

如果您想知道为什么首先需要其中之一,那么它们最适合内容以不寻常结构组织的网站。因此,如果您有任何内容需要以不同于常规帖子和页面的方式显示,自定义帖子类型可能正是您所需要的。由于内置永久链接,它们也非常适合 SEO。

什么是自定义帖子类型?

尽管具有特定的名称,帖子类型可用于任何类型的内容。您可能以前见过它们,因为开发人员使用自定义帖子类型将投资组合、员工、推荐等添加到他们的 WordPress 主题中。因此,自定义帖子类型只是数据库中具有不同 post_type 值的常规帖子。有五种默认帖子类型:帖子、页面、附件、修订和导航菜单。但是,WordPress 3.0+ 允许您添加自己的自定义项。

Term taxonomy经常出现在对自定义帖子类型的引用,这可能会使某些人感到困惑。对于 WordPress 新手,分类法是一种将帖子和自定义帖子类型组合在一起的方法。 WordPress 自带四种内置功能:类别、标签、链接类别和帖子格式。您可以在 WordPress Codex 中了解有关这些详细信息的更多信息。但是,您也可以创建自己的自定义分类法并在帖子类型中使用它们来对内容进行分组和排序。

如何创建自定义帖子类型?

在 WordPress 中添加自定义帖子类型非常容易,因为 WordPress 包含一个可用于创建它们的核心函数 register_post_type。这意味着如果您是插件开发人员,您可以轻松地在您创建的主题中包含自定义帖子类型。或者您可以通过子主题或自定义插件添加它们。

手动创建自定义帖子类型(带代码)

首先,你应该在哪里添加代码?注册和添加自定义帖子类型的最佳位置取决于您的项目。如果您使用的客户端站点已经激活了主题,那么您将需要创建一个子主题并从那里注册您的帖子类型。如果您想创建自己的自定义主题,可以将代码放在 functions.php 文件或从 functions.php 调用的任何其他文件中。如果您正在开发插件,那么在何处添加代码并不重要,只要代码在“init”操作挂钩之前运行以确保它可用即可。

出于测试目的,您的 functions.php 文件也可以。但是插件将确保您在更改或升级主题时不会破坏您的网站。

如果自定义帖子类型很重要,请考虑将其设为必须使用的插件。对于不熟悉的人,必须使用的插件安装在内容文件夹内的一个特殊目录中,并在所有站点上自动启用。必须使用的插件不会出现在 wp-admin 插件页面的默认插件列表中。

在任何情况下,自定义帖子类型都可以通过 register_post_type() 函数添加到 WordPress。这允许您通过多个标签定义新的。一旦创建了标头,就可以在 admin_menu 之前使用此功能,但在 after_setup_theme 操作挂钩之后。如果创建正确,只需几行代码即可将其关闭。来自 WordPress Codex,这是一个新的自定义帖子类型的简单示例:

function create_post_type(){
register_post_type('acme_product',
array(
' labels ' => array(
'name' => __('product'),
'singular_name' => __('product')
)
'public'=>是的,
'has_archive' => 是的,
)
);
}
add_action('init', 'create_post_type');

这将创建一个名为“product”的帖子类型,ID 为“acme_product”。 register_post_type 函数有两个值。首先是名称的“标签”。第二个是“公开”,使其在管理屏幕和您的网站上可见。最后,“has_archive”启用新帖子类型的存档。

设置完成后,您应该会看到一个自定义帖子类型的菜单条目,能够添加帖子,在管理员中查看帖子列表,并在您的网站上访问它们。您可以添加到自定义页面的更多值或参数。可以在注册 Codex 邮件类型页面上找到它们的完整列表。

接下来,创建一个 16x16 像素的图标图像并将其保存到当前插件文件夹中。这是仪表板中自定义帖子类型图标所必需的。另一种选择是使用字体图标。如果你有兴趣走那条路,我们有一个关于如何使用 Dashicons 和你应该阅读的自定义帖子类型的快速指南。然后您可以继续并激活插件。

命名注意事项:虽然使用简单的自定义帖子类型标识符既诱人又方便,但最好使用前缀。用于标识使用自定义类型的插件、主题或站点的短命名空间。如需更详细的指南,请查看 tuts + WordPress 自定义帖子类型指南。如果您想编写自己的帖子类型,他们会深入研究更多代码和自定义帖子类型选项。但如果您想要更快、更简单的选择,请继续阅读!

使用插件创建自定义帖子类型

查看演示以了解更多信息并下载

添加新的自定义帖子类型的最简单方法是使用插件。免费的 Post Types Unlimited 插件恰好使创建和管理自定义帖子类型变得轻而易举。您甚至可以创建自定义分类法。

您所要做的就是安装插件。您可以直接从 WordPress 目录中获取它(参见上面的链接)。或者将它安装在您的 WordPress 仪表板中的插件 > 添加新项下,然后搜索“无限制的帖子类型”——它应该是第一个结果。只需安装并激活。

这个会显示在仪表板在底部添加一个新的“帖子类型”菜单项。单击它开始创建新的帖子类型和类别。有许多自定义帖子类型或分类名称的选项,使新的帖子类型对作者可见,它出现在仪表板中(或子菜单中,例如在设置下)、菜单图标、支持的图元文件框(只需勾选你想要的包括),甚至是 REST API 的高级设置。

选择要为新帖子类型启用的选项并保存。就这样。准备好了!只需查找您在仪表板中提供的新自定义帖子类型的名称。我们在上面的屏幕截图中被命名为“我的帖子类型”。 (注意——我们没有指定位置,所以这只是在测试网站上现有的帖子类型后添加的。)

Post Types Unlimited 是为适应任何 WordPress 主题而创建的,但如果您使用的是 Total WordPress 主题,您将获得大量独特而强大的选项.为面包屑设置自定义主页,为新帖子类型选择存档布局选项,选择条目(和单个条目)块和元,启用下一个/上一个分页等等。

结论

自定义帖子类型可能听起来令人生畏,但并非必须如此。通过一些练习,您可以了解自定义帖子类型的基础知识并创建您需要的站点。使用免费的 Post Types Unlimited 插件,没有理由不这样做。现在您已经了解了基础知识,如果您还有任何问题,请告诉我们。或者,如果您有更多有用的提示,请分享!在下面的评论中给我留言。来!我们讨论一下!