在WordPress中创建自定义内容:自定义帖子类型

现在几乎普遍同意这个WordPress不仅仅是一个博客平台:它是一个内容管理系统.

但在我看来,它使它强大的CMS是创建自定义内容的能力,并以您需要的方式显示内容.

在此中,两个帖子中的第一个将在WordPress中查看三种类型的自定义内容,并向您展示如何创建该内容.我会覆盖:

  • 自定义帖子类型
  • 习惯分类
  • 自定义字段.

在两个部分帖子系列的第一部分中,我将在WordPress中介绍自定义内容的概念,并演示如何注册和使用自定义帖子类型,以及探索如何显示您创建的帖子使用该定制帖子类型.

继续读取,或使用以下链接跳转:

  • 了解和使用每种自定义内容

    • 自定义帖子类型
    • 习惯分类
    • 自定义字段

  • 创建自定义帖子类型

    • 编码您的帖子类型

  • 在前端显示帖子类型

    • 设置permalinks链接到帖子类型的页面
    • 将帖子类型添加到导航菜单
    • 帖子类型
    • 的模板



理解和使用每种自定义内容

在开始创建自定义内容之前,确切地知道每个人以及您可以使用哪些场景的内容很有用.让我们从自定义帖子类型开始.

自定义帖子类型

wordpress默认包含给您的一组帖子类型.这些是:

  • 帖子
  • 页面
  • 附件
  • 导航菜单项
  • 修订
  • 链接(如果您使用的是blogroll功能)

您还可以创建自己的自定义帖子类型来存储不适合上述任何类别的内容.示例可能包括在商务站点或列表网站中的事件中的产品.如果您曾使用过插件以创建商店,事件列表或任何其他类型的唯一内容,则您可以在不知道它的情况下创建定制帖子类型.

已充分的插件使用自定义帖子类型,例如:


  • MarketPress使用自定义帖子类型的产品.
  • Crandpress Pro使用课程,教师和学生的定制帖子类型.
  • 支持系统使用门票和常见问题的自定义帖子类型.

有更多的例子,但这使您了解了定制帖子类型的用途.

重要的是要记住,自定义帖子类型 not 帖子.他们没有与帖子的直接关系,您应该单独考虑它们.您可以设置(或注册)您的自定义帖子类型,以表现出帖子或表现类似页面:这取决于您.如果它们设置如帖子,您将能够显示它们的存档页面,而如果它们就像他们将是分层的页面.大多数自定义帖子类型都被配置为表现出帖子,但这并不意味着你必须是.

习惯分类学

与自定义帖子类型一样,自定义分类分类添加到已经提供WordPress的分类.这些是:

  • 类别
  • 标签
  • 帖格格式
  • 链接类别(如果您使用的话,则适用于Blogroll中的链接)

您还可以创建自己的习惯分类学,更有效地组织您的内容.重要的是要记住,习惯分类是 not 一个类别,并且与类别没有关系:相反,'类别'只是WordPress使用的分类学.

有时使用内置类别将为您提供所有您需要对内容进行排序的所有内容,例如,如果需要引入分层类别结构.但有时这是不够的,特别是如果您希望能够使用多个分类系统显示帖子,或者您使用的是使用自定义帖子类型并希望使用单独的分类物.

示例包括:


    在电子商务网站上,产品分类-可能是多个诸如服装店的颜色,尺寸和面料等多种.

    在活动列表网站上,活动类型,场地等的分类学.

  • 在知识库上,分类管理以横切方式对数据进行排序:例如,如果它是一个Web开发知识库,您可以使用分类语言,难度水平和平台.

我们的插件再次使用定制分类:例如,在市场上,有产品类别和产品标签,与博客帖子的类别和标签分开;在受到课程类别的过程中,在支持系统中,有货票类型和常见问题分类类别.

在决定如果您需要注册定制分类物,则需要问自己,如果现有类别系统会做您需要的事项.如果您需要的只是能够为您的类别添加层次结构,您已经可以执行此操作.

categories

因此,如果我正在开发培训网站(例如)并希望通过所教导的技能或知识使用类别来排序帖子,我可能会使用分层类别,如此屏幕截图所示.您可以在此处看到我有三个顶级类别:管理开发,个人开发和技术技能,在下一个级别下面的所有其他东西.

categories-and-taxonomy

但如果事情有点复杂,那么怎么了?让我们说我想在与你的团队沟通时添加一系列帖子.

如果我可以分开这些帖子的管理者,也可以更容易地让事情变得更加容易.所以也许我可以为观众添加分类法,并用它来识别管理人员的帖子,而不是将管理开发作为一个类别,我可以为观众创造一个新的分类法.这样我可以为每个帖子识别多个主题和多个受众组.

我会告诉你如何在这个系列的下一部分,以创建一个分类是这样的:一旦你做到了,你就可以从在后两个类别和受众群体编辑屏幕可供选择,如显示在屏幕截图中.

自定义字段

第三种类型的自定义内容是自定义字段,也称为后元数据.

自定义字段由两个元素组成,您可以在后编辑屏幕中看到和编辑: key .您可以再次使用相同的键,再次为多个帖子,但每个帖子都有一个唯一的值.WordPress还给每个自定义字段创建自己的唯一ID,这意味着即使它们具有相同的键和值,也意味着每个帖子的每个自定义字段都是唯一的.

这与自定义分类有关:虽然您可以在创建自定义字段时从现有键中进行选择,但您无法从之前使用的现有值中进行选择.一般来说,这意味着分类管理更好地排序和分类数据.

注意:某些插件将为您选择从下拉框中选择自定义字段的值,但这将使用POST编辑屏幕中的插件创建的自定义元表,而不是标准自定义字段接口由WordPress提供.

但是,存在一些情况,其中使用自定义字段可以用于对数据进行排序,例如,如果要存储数值数据.在一家电子商务网站中,您不想为每种可能的价格创建分类法:相反,您将在自定义字段中插入此内容.然后,您可以使用此数据允许客户识别价格低于20.00美元的产品,或按价格排序.

您还可以使用自定义字段来存储非数字数据,这意味着您可以在帖子之间存储和显示类似的数据并与帖子的主体分开显示.例如,在作业清单网站中,您可能使用自定义字段来存储空缺的位置,工资和工作时间.

这就是作业和专家插件的所作所为:它使用自定义字段的组合(称为"作业元")和分类学('类别和技能')进行排序数据:

jobs&experts-metadata

一旦添加了此数据,您的作业网站的访问者将能够按预算对作业进行排序,仅显示仍然打开的那些作业,并查看突出显示的每个作业的联系电子邮件和完成日期.分类学用于技能,以便可以显示每个的存档页面.

您将了解如何在本系列的下一部分中创建自己的自定义字段:在此帖子中,我们将继续创建自定义帖子类型.

创建自定义文本类型

一旦确定了您需要自定义帖子类型,就有两种方法可以解决它:自己编写或使用插件.我将简要展示在主题或插件中注册定制帖子类型所需的代码,但首先让我们看一下您可以使用的一些插件:


  • 我们自己的Custompress为您提供了一个用于创建自定义帖子类型,分类和自定义字段的界面,并且非常用户友好.如果要创建许多类型的自定义内容,这将保存您安装多个插件.
  • 自定义帖子类型UI插件是最流行的免费插件,用于在插件存储库上添加自定义帖子类型.它允许您添加自定义帖子类型和分类,但不是自定义字段.该界面与Cathoratepress相同,与CustorPress相同,具有更多技术术语,让您掌握您的头部,但它执行这项工作.

您可以阅读更多有关插件的信息,以帮助您在我们的最佳CMS插件的审核中创建自定义内容.

但如果您对自己的编码感到满意,这就是您如何登记定制帖子类型的方式.

编码帖子类型

wordpress提供了一个名为register_post_type()的函数,您可以使用它来创建自定义帖子类型.您将主题功能文件或(甚至更好)添加到您尤其创建的插件中的函数,然后通过WordPress中的init钩子触发.

注意:最好在插件中注册您的自定义帖子类型而不是主题,因为如果您将来更改主题,则不会丢失您的自定义帖子类型.

要遵循此技术,您需要访问WordPress文件和代码编辑器.我建议在开发网站上尝试介绍,而不是您的直播网站!

首先创建一个名为post-types.php的新空文件,并将其保存到wp-content目录中的plugins文件夹.

现在将以下代码添加到您的文件中:

这将打开插件文件并告诉WordPress它是一个插件.它还提供了一个标题和描述,它将帮助您在您的网站激活时识别插件.

[接下来,下面读取*/且在关闭?>线的线下,添加这些行:

这会创建一个函数,该函数将保存代码以使用add_action()函数将其附加到init钩子.这使得WordPress在正确的时间运行您的功能.

现在,您需要在卷曲括号内添加自定义帖子类型的代码:

让我们仔细看看这段代码的表现.第一部分告诉WordPress您要为帖子类型使用的标签.这些将替换为"帖子","添加帖子"等的默认标签.接下来,您调用register_post_type()函数,其中具有以下参数:

  • title:你的函数在没有这个的情况下无法工作.
  • labels:您已经指定的标签.
  • has_archive :通过将此设置为true,您可以告诉WordPress,可以为此帖子类型显示存档页面.
  • public :将此设置为true,以确保人们可以在您的网站上查看每个产品的页面.
  • supports :定制帖子类型支持的WordPress管理员的元素.
  • taxonomies :您要与POST类型一起使用的分类数组.我使用了内置类别和标签,虽然您可能想要将此空白留空并为稍后为您的帖子类型注册定制分类系统.
  • exclude_from_search :将此设置为false,以确保您的产品包含在搜索结果中.
  • capability_type :如post,因为我们的产品会表现出帖子而不是页面.
  • rewrite :这告诉WordPress帖子类型存档的字样是什么,它是其URL的域名之后使用的文本.通过将此设置为products,产品页面的URL将是http://mysite.com/products/

现在保存文件.整个插件的代码将如下所示:

为您的帖子类型工作,您需要激活您的新插件.转到站点管理员中的插件页面,并找到新插件:

activate-cpt-plugin

admin-menu-with-new-post-type

单击激活链接以激活它.您现在会在管理员菜单中看到额外的帖子类型:

您可以单击产品链接,并开始向您的网站添加产品,就像发布一样.

在前端显示帖子类型

一旦添加了一些产品,您需要能够在网站的前端显示这些.

首先,您需要刷新您网站上的永久链接,以便WordPress将使用正确的链接显示产品或产品档案:

  1. 在WordPress管理员中,转到设置-> permalinks .
  2. 确保选择"帖子名称"选项.
  3. 单击保存更改按钮.

注意:即使您已经配置了Permalinks,您需要执行此操作,因为WordPress需要刷新这些设置,以获取新的链接到您的产品.

将帖子类型添加到导航菜单

如果要将产品添加到导航菜单,可以.转到外观->菜单,您将看到左侧显示产品.只需将任何产品拖到菜单上以包含它们.

添加您的产品存档有点棘手,为此,您需要将自定义链接添加到菜单中.

  1. 仍在菜单屏幕上,单击左侧的链接 box.
  2. url 字段中,键入http://mysite.com/products/,用自己的域替换mysite.com.
  3. 在链接文本字段中,键入 products .
  4. 单击添加到菜单按钮.
  5. 一旦将链接添加到菜单中,将其移动到正确的位置,然后保存菜单.
  6. 通过单击保存菜单保存更改.不要错过这个步骤!

现在,如果您访问您的网站的前端并单击该菜单链接,您将被带到您的产品存档页面.这是我的:

product-archive-page

所以现在您有一个页面要显示所有产品.但是,如果你想自定义你展示它们的方式怎么样?

帖子类型

的模板

wordpress使用称为模板层次结构的东西来标识它的主题中的模板文件它应该用于显示给定的内容类型.它超出了这篇文章的范围,以描述模板层次结构如何详细运作,但它有助于了解WordPress如何显示新帖子类型.

当WordPress显示单个产品时,它将在您的主题中查看每个文件中的每一个文件:

  1. 用于显示单个产品的文件,称为single-product.php.
  2. 用于部署任何帖子类型的所有单个帖子的文件,称为single.php.
  3. 用于部署各种内容的通用文件,称为index.php.

当WordPress显示产品存档时,它将通过这些模板文件进行工作:

  1. 用于显示产品存档的文件,称为archive-product.php.
  2. 一个称为archive.php的通用归档模板.
  3. 默认模板index.php.

WordPress将通过此层次结构工作,并使用它第一个模板文件.因此,如果要为产品创建自定义模板,则启动的好地方是通过复制single.php文件,将其保存为single-product.php并编辑.

但是,如果您不想创建模板文件,WordPress将乐意使用主题中已存在的文件,这是我对我的二十五个主题的archive.phpsingle.php文件所做的.

摘要

能够创建自定义内容使WordPress非常强大:您可以使用它以以一种方式添加和显示一系列灵活的内容类型.

在此帖子中,您已经了解了三种类型的自定义内容,它们是什么,以及何时使用它们.您还学习了如何创建自定义帖子类型并在您的网站上显示它.

在下一部分中,您将学习如何创建自定义分类和自定义字段.

6

发表回复