如何创建 WordPress 自定义帖子类型 – 迷途通

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

11月 15, 2022                      👁️ 53

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

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

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

什么是自定义帖子类型?

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

术语分类法经常在参考自定义帖子类型时出现,这可能会让一些人感到困惑。对于那些不熟悉 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' => __( 'Products' ),
        'singular_name' => __( 'Product' )
      ),
      'public' => true,
      'has_archive' => true,
    )
  );
}
add_action( 'init', 'create_post_type' );

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

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

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

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

创建帖子类型不受限制的自定义帖子类型

信息和下载

查看演示

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

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

这将在仪表板底部添加一个新的帖子类型菜单项。单击它开始创建新的帖子类型和分类法。自定义帖子类型或分类名称有大量选项,使新帖子类型对作者可见,它出现在仪表板中的位置(或子菜单中的位置,例如“设置”下)、菜单图标、支持的元框(只需检查您想要包含的那些),甚至是 REST API 的高级设置。

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

Post Types Unlimited 旨在与任何 WordPress 主题配合使用,但如果您使用的是Total WordPress 主题,您将可以访问大量独特且强大的选项。为您的面包屑设置自定义主页,选择新帖子类型的存档布局选项,选择条目(和单个条目)块和元,启用下一个/上一个分页等等。

WCK WordPress 创建工具包 PRO

信息和下载

查看演示

WordPress Creation Kit PRO 是一款高级 WordPress 插件,可让您轻松自定义 WordPress 安装,以便客户或贡献者只看到您希望他们看到的内容。这个功能强大的插件可让您控制自定义字段和帖子类型,以创建您自己的 WordPress 清理安装。

如果您是 Web 开发人员,您可能已经知道 WordPress 可能会让某些客户不知所措,帮助他们简化网站使用过程的一种方法是减少他们在 WordPress 支持下可以看到和看不到的内容安装。输入 WordPress 创建工具包 PRO。有了这个,您可以为您的客户创建一个用户友好的 WordPress 安装。您可以创建和重命名自定义帖子类型和分类,以使其更易于理解,或隐藏您用于其网站的 WordPress 主题中包含的一些设置选项。您可以使用 WordPress Creation Kit PRO 制作一些音调。

WordPress Creation Kit PRO 的另一个重要功能是包含的自定义字段。根据您创建的帖子类型,您可能希望为内容添加文本区域、选项下拉列表(例如工作人员头衔或用于拍摄照片的设备类型)、日期或其他内容。无论您需要什么,WordPress Creation Kit PRO 都包含 11 个自定义字段选项,因此您可以使您的帖子类型易于客户使用。

ACPT – WordPress 的自定义帖子类型

信息和下载

查看演示

另一个选项是 WordPress 的 ACPT 自定义帖子类型。这个免费增值插件提供了一个精简版,您可以从 WordPress.org 获取它以添加注册自定义帖子类型和分类法并创建元框字段(具有电子邮件、选择和文本的字段类型以供选择)的能力。只需单击 3 次,ACPT 甚至会引导您完成整个过程。

无论您是想为博客之外的新闻添加新的帖子类型,还是想组织复杂的音乐库,这个插件都是一个不错的选择。此外,ACPT lite 还提供快速页面构建器集成(通过自定义简码、Gutenberg 块和 Elementor 小部件),以及无缝 WooCommerce 集成(适用于所有产品类型和默认数据)。因此,无论您的 WordPress 网站当前使用什么设置,您都应该能够安装并开始使用。

但是您应该知道专业版具有更多功能!这使您可以更好地控制自定义帖子类型以及高级设置选项。访问ACPT.io主站点以升级以访问添加的元框字段类型(总共 24 种,包括多选、切换、地址、地图、电话号码、颜色、货币、日期、时间、嵌入、画廊、图像、列表、 HTML 等)、增强的帖子类型关系、对自定义 API 的支持(可用于管理可用的 ACPT 操作)、用于存档或单页的有用 HTML 模板构建器,甚至能够导入/导出数据。


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

发表回复

您的电子邮箱地址不会被公开。