目录
钥匙要点
>您也可以将任何dashicon用作CPT图标。
有几个可用的选项:
register_meta_box_cb
>将此参数设置为true将为您的自定义帖子类型启用档案。 例如,假设您的cpt是书籍,访问http://yoursite.com/books将显示属于书籍自定义帖子类型的帖子列表。
can_export
query_var
> WordPress自定义帖子类型的常见问题
>使用WordPress自定义帖子类型的好处是什么?除了标准帖子和页面之外,它们允许您为网站创建特定的内容类型。这可以包括投资组合,推荐,产品等。自定义帖子类型还提供了一种更有条理,更有效的方法来管理您的内容。它们可以通过特定的功能和字段来自定义,从而更容易以一致的方式输入和显示内容。
我可以将自定义字段添加到我的自定义帖子类型吗?
>在您的网站上显示自定义帖子类型可以通过在主题中创建新的模板文件来完成。该文件应命名为单{post-type} .php,其中{post-type}是您的自定义帖子类型的名称。然后,您可以使用标准的WordPress循环显示您的自定义帖子类型的内容。
是的,有几个可用的插件可以简化流程创建自定义帖子类型。这些插件提供了一个用于创建和管理自定义帖子类型的用户友好界面,而无需编码。一些流行的选项包括自定义帖子类型UI,POD和工具集类型。
我可以使用层次结构创建自定义的帖子类型吗?这可以通过在注册自定义帖子类型时将“层次结构”参数设置为true来完成。分层自定义帖子类型可以具有父母和子女帖子,类似于页面。
>如何自定义帖子类型自定义管理界面?
我可以在网站的搜索结果中包含自定义帖子类型吗?
首页 CMS教程 &#&按 WordPress自定义帖子类型的权威指南

WordPress自定义帖子类型的权威指南

Feb 15, 2025 pm 01:11 PM

WordPress自定义帖子类型的权威指南

钥匙要点

    WordPress已演变为成熟的内容管理系统和开发平台,能够通过插件,主题和WP REST API将帖子或结构化数据分组为各种类型。 WordPress中的自定义帖子类型(CPT)是创建并注册到WordPress的新帖子类型。帖子类型的示例可能包括公司或商业网站的投资组合,推荐和产品。
  • >创建自定义帖子类型涉及使用register_post_type()函数注册邮政类型,并使用一系列参数自定义它。这些参数可以控制诸如描述性名称,公众可见性,菜单位置,图标,层次结构以及帖子类型的其他功能。
  • >有几个可用的插件,例如自定义邮政类型UI,PODS框架和自定义Post类型制造商,可以简化创建自定义邮政类型的过程,从而使其更加用户友好,并消除了编码的需求。 🎜>
  • >“ wordpress被称为博客软件”的日子已经一去不复返了。 通过插件和主题,组帖子或结构化数据扩展其功能的能力,以及WP REST API的到来,也将其进一步演变为完整的内容管理系统和开发平台。
  • 多年来,我已经成功地开发了许多自定义的Web应用程序,该应用程序大量利用自定义帖子类型。这些Web应用程序之一的一个示例是我的WordPress插件的主题市场,称为ProfilePress。
  • 仔细查看上面链接的主题市场,您会发现它使用了下一个 /上空分页链接的URL中明显的自定义分页系统。因此,您有可能构建一个内部的分页系统,该系统将在查询自定义帖子类型(CPT)中完美工作。
>

足够说,让我们来实现本教程的目的,即在WordPress中学习自定义帖子类型的复杂性。

>我希望解决我个人与CPT合作的许多障碍,以及您可以做的一些很酷的事情。

>

自定义帖子类型定义

post也是特定的帖子类型,但这种内容的单个项目通常称为帖子。

在内部,所有帖子类型都存储在wp_posts数据库表中,但通过称为post_type的列进行区分。

> POST类型是指在WordPress数据库帖子表中保留的各种结构化数据。

>帖子类型的示例是帖子(一组博客帖子),页面(一组页),附件(一组上传的媒体文件)和修订版(一组邮政修订版)在WordPress中。

武装着邮政类型的定义,一种创建并注册到WordPress的新帖子类型被称为自定义邮政类型。

>如果您正在构建具有WordPress的公司或商业网站,则可以创建的帖子类型的示例是投资组合,推荐和产品。

现在我们已经了解了自定义帖子类型的概念,接下来就是学习如何创建它们。

创建自定义帖子类型

>创建自定义帖子类型非常容易。首先,将帖子类型注册为register_post_type()函数,最后,在函数调用中wrap register_post_type()并将其连接到INIT ACTION,例如So:>

从上面的代码中,您可以看到register_post_type()具有第二个函数参数,该函数接受自定义自定义帖子类型的各个方面所需的许多数组参数。>

1

2

3

4

5

6

7

8

9

10

11

<span><span>function portfolio_cpt() {</span>

</span>

    <span>$args = array(

</span>        <span>'label'  => 'Portfolio',

</span>        <span>'public' => true,

</span>    );

 

    register_post_type( <span>'portfolio', $args );

</span>}

 

add_action( <span>'init', 'portfolio_cpt' );</span>

登录后复制
登录后复制
登录后复制
您现在应该看到portfolio自定义帖子类型出现在WordPress Admin仪表板中。>

>值得注意的是,在调用register_post_type()时,第二个参数是可选的。也就是说,cpt也可以如下创建:

>

WordPress自定义帖子类型的权威指南如果以这种方式创建了CPT,它将不会显示在Admin仪表板菜单中(尽管仍然可以通过Direct URL访问访问“ http://example.com/wp-admin/eedit.php?post_type = portfolio“)及其UI措辞(否则称为标签)和管理通知将与内置的邮政帖子类型相同。

>让我们介绍一些数组参数,以自定义CPT及其各自的功能。>

1

2

3

4

5

6

<span><span>function portfolio_cpt() {</span>

</span>

    register_post_type( <span>'portfolio' );

</span>}

 

add_action( <span>'init', 'portfolio_cpt' );</span>

登录后复制
登录后复制
登录后复制
标签

>您的自定义帖子类型的复数描述名称。例如,如果您要创建电影CPT,则应该是电影。

>它将默认为$ post_type的值,这是register_post_type()的第一个参数。

标签

该帖子类型的标签数组。每个字符串都是特定管理页面中显示的一些文本。

>如果您要创建供公众使用的插件,请确保可以翻译这些字符串。

  • 名称:帖子类型的名称的复数形式。
  • >
  • singular_name:帖子类型的名称的单数形式。
  • >
  • add_new:添加新帖子的菜单项。
  • >
  • add_new_item:创建新帖子时显示的标题。
  • edit_item:编辑帖子时显示的标题。
  • > new_item:在管理标题中的“收藏夹”菜单中显示。
  • view_item:在编辑后屏幕上与永久链接一起显示。
  • search_items:编辑帖子屏幕上搜索框的按钮文本。
  • not_found:在admin中未找到帖子时显示的文本。
  • not_found_in_trash:垃圾中没有帖子时要显示的文本。
>可以在此处找到标签及其描述的完整列表。

>

描述

>简短的描述性摘要,即邮政类型是什么,尽管我尚未在WordPress Admin中找到它的位置。

>公共

>根据其布尔值,除非明确定义,否则它将自动决定其他参数。如果您想对公开论点有更多的控制权,则可能会设置三个具体论点:>

show_ui:确定是否显示给管理屏幕。

>
    publicly_queryable:确定是否可以从前端执行此帖子类型的查询。
  • dubl_from_search:帖子是否应出现在搜索结果中。
  • >
  • 菜单_position
默认情况下,在管理员中的“注释”菜单项之后,添加了一种新的帖子类型。但是您必须能够将其移至选择的合适位置。

>

例如,将菜单_ position值设置为70将在用户下方添加您的菜单项。>

菜单_icon

新的帖子类型将默认为“帖子”菜单图标,但是如果您想要一个自定义图标,请将此标签设置为图标或图像文件的URL。

>您也可以将任何dashicon用作CPT图标。

说您想使用下载dashicon,将此标签设置为dashicon值,如下所示:

1

2

3

4

5

6

7

8

9

10

11

<span><span>function portfolio_cpt() {</span>

</span>

    <span>$args = array(

</span>        <span>'label'  => 'Portfolio',

</span>        <span>'public' => true,

</span>    );

 

    register_post_type( <span>'portfolio', $args );

</span>}

 

add_action( <span>'init', 'portfolio_cpt' );</span>

登录后复制
登录后复制
登录后复制

层次结构

这个论点使您可以决定是否制作CPT层次结构。默认值是错误的。设置为true以使您的CPT层次结构。

1

2

3

4

5

6

<span><span>function portfolio_cpt() {</span>

</span>

    register_post_type( <span>'portfolio' );

</span>}

 

add_action( <span>'init', 'portfolio_cpt' );</span>

登录后复制
登录后复制
登录后复制
支持

>支持参数允许您定义一系列元框和字段,这些元件和字段在编辑或创建新帖子时将出现在屏幕上。此默认为标题和编辑器。

将此参数设置为false将阻止默认(标题和编辑器)行为。>

有几个可用的选项:

  • >标题:创建帖子标题的文本输入字段。
  • 编辑器:写作内容的内容编辑器。
  • >
  • 作者:一个用于更改帖子作者的选择框。
  • 缩略图:特色图像功能。
  • >摘录:用于编写自定义摘录的文本题材。
  • >
  • 转型:能够打开反转和pingbacks的能力。
  • >
  • 自定义场:自定义字段输入字段。
  • >评论:打开/关闭评论。
  • >
  • 修订:允许您的帖子进行修订。
  • >
  • >后形式:添加邮政格式,请参阅“邮政格式”部分
  • >
  • > page-attributes:为页面显示的属性框。这对于层次结构帖子类型很重要,因此您可以选择父帖。
  • >

register_meta_box_cb

提供一个回调函数,在设置编辑表单的元框时将调用。回调函数获取一个参数$ post,其中包含当前编辑帖子的WP_POST对象。>

此功能对开发人员特别有用,可以使他们创建将显示在CPT编辑屏幕中的自定义元框。

>

1

2

3

4

5

6

7

8

9

10

11

<span><span>function portfolio_cpt() {</span>

</span>

    <span>$args = array(

</span>        <span>'label'  => 'Portfolio',

</span>        <span>'public' => true,

</span>    );

 

    register_post_type( <span>'portfolio', $args );

</span>}

 

add_action( <span>'init', 'portfolio_cpt' );</span>

登录后复制
登录后复制
登录后复制
分类法

>将与此自定义帖子类型一起使用的一系列注册分类法或post_tag。

has_archive

1

2

3

4

5

6

<span><span>function portfolio_cpt() {</span>

</span>

    register_post_type( <span>'portfolio' );

</span>}

 

add_action( <span>'init', 'portfolio_cpt' );</span>

登录后复制
登录后复制
登录后复制

>将此参数设置为true将为您的自定义帖子类型启用档案。 例如,假设您的cpt是书籍,访问http://yoursite.com/books将显示属于书籍自定义帖子类型的帖子列表。

重写

此参数允许您在查看单个帖子或存档时定义自定义帖子类型的永久链接结构。

>默认值是正确的,并将$ post_type用作slug。要防止重写,请设置为false。

>

让我们来看看一些示例,以清楚起见。

>

说您创建了一个自定义帖子类型,但希望将URL slug从

>评论

更改为

>评估>,使用以下重写参数将从http://示例更改URL 。 CPT存档。 >每当您进行WordPress URL重写时,请确保单击“设置”中的“保存更改”按钮>>永久链接以重新创建重写规则。

>

1

<span>'menu_icon' => get_stylesheet_directory_uri() . '/images/portfolio-icon.png',</span>

登录后复制
基本上,slug定义了新的URL slug,而使用_front确定是否使用前基底座预付费永久链接结构。

>在_front上仍然不清楚吗?让我们看看一个例子。

>

说您有一个固定链接结构,带有

博客

,如下图所示。

>WordPress自定义帖子类型的权威指南

>如果with_front设置为false,则单个帖子和档案库的URL变为http://example.com/blog/assessment/harry-potter/ and http://example.com/blog/assessment/但是,如果将其设置为真,则单个帖子和档案存档的URL分别为http://example.com/assessment/harry-potter/和http://example.com/assessment/。

请注意后者中博客的遗漏?这就是区别。

can_export

>使用此参数来决定是否可以通过WordPress导出工具导出属于您的自定义帖子类型的帖子。默认情况下,这将设置为true。

query_var

此参数允许您控制用于获取此类型帖子的查询变量。

如果设置为true,它将允许您通过example.com/?book=harry-potter请求书籍自定义帖子类型,其中harry-potter是书本或帖子的url slug。

如果设置为字符串而不是true(例如

出版),则可以: “ query_var”的警告>

> query_var在您的cpt注册数组中未定义,它默认为$ post_type,除非将其设置为false。

>警告。每当query_var的值作为查询字符串中添加到URL中时,它将导致404。>

>让我澄清一下。假设您的cpt query_var的价值是审核,并且一个带有键审查的键集的查询字符串已添加到您的WordPress网站的任何URL中,以以下任何形式:

>

http://example.com/?review=some-random-string

http://example.com/a-post-slug-here/?foo=bar&review = some-random-string

    这将导致404发生。
  • >我实际上以艰难的方式了解了这一点。在我遇到这个问题时,我在WordPress Core Trac中创建了一张票,以将其报告为错误。
  • >我花了数周的时间才终于在核心WordPress团队的一些成员回答我的票之前弄清楚了。
加速使用插件的自定义邮政类型设置

>现在我们已经覆盖了基础,现在是时候指出WordPress插件存储库中的许多插件,使创建自定义帖子类型非常简单。

>

>示例包括(但不限于):>

自定义帖子类型UI

pods Framework

自定义邮政类型制造商

    结论
  • 在本教程中,我们了解了哪些自定义帖子类型以及它们的创建方式。>
  • 这实际上是WordPress自定义帖子类型的系列中的第一个。在我的下一个教程中,我们将学习如何自定义各种管理员通知,如何将自定义分类法注册到帖子类型中,并在CPT屏幕上添加上下文帮助选项卡。
  • >
  • 在此之前,愉快的编码!
  • >

    > WordPress自定义帖子类型的常见问题

    >使用WordPress自定义帖子类型的好处是什么?除了标准帖子和页面之外,它们允许您为网站创建特定的内容类型。这可以包括投资组合,推荐,产品等。自定义帖子类型还提供了一种更有条理,更有效的方法来管理您的内容。它们可以通过特定的功能和字段来自定义,从而更容易以一致的方式输入和显示内容。

    >

    >如何在WordPress中创建自定义帖子类型?输入WordPress涉及在主题的函数.php文件中添加几行代码。您需要使用register_post_type()函数,该函数允许您指定自定义帖子类型的名称,标签和其他功能。请记住,通过访问永久链接设置页面创建新的自定义帖子类型之后,要刷新您的重写规则。

    我可以将自定义字段添加到我的自定义帖子类型吗?

    是的,您可以添加自定义字段对于您的自定义帖子类型。可以使用add_meta_box()函数完成此操作,该功能使您可以在邮政编辑屏幕中添加一个新的元框。然后,您可以使用此Meta框输入并显示您的自定义帖子类型的其他信息。

    >如何在网站上显示自定义帖子类型?

    >在您的网站上显示自定义帖子类型可以通过在主题中创建新的模板文件来完成。该文件应命名为单{post-type} .php,其中{post-type}是您的自定义帖子类型的名称。然后,您可以使用标准的WordPress循环显示您的自定义帖子类型的内容。

    我可以使用插件创建自定义帖子类型吗?

    >

    是的,有几个可用的插件可以简化流程创建自定义帖子类型。这些插件提供了一个用于创建和管理自定义帖子类型的用户友好界面,而无需编码。一些流行的选项包括自定义帖子类型UI,POD和工具集类型。

    >如何在我的自定义帖子类型中添加分类法? register_taxonomy()函数。此功能使您可以创建新的分类法,指定其标签,并将其与您的自定义帖子类型相关联。然后,您可以使用此分类法来对您的自定义帖子类型的内容进行分类和过滤。

    我可以使用层次结构创建自定义的帖子类型吗?这可以通过在注册自定义帖子类型时将“层次结构”参数设置为true来完成。分层自定义帖子类型可以具有父母和子女帖子,类似于页面。

    >

    >如何自定义帖子类型自定义管理界面?

    >在注册自定义帖子类型时,可以使用“支持”参数自定义帖子类型自定义admin界面。该参数允许您指定帖子编辑屏幕中的哪些功能,例如标题,编辑器,缩略图和自定义字段。

    我可以在网站的搜索结果中包含自定义帖子类型吗?

    >

    是的,您可以在网站的搜索结果中包含自定义帖子类型。这可以通过在注册自定义帖子类型时将“ dubl_from_search”参数设置为false来完成。您还可以使用插件或自定义代码来进一步自定义网站的搜索功能。

    >

    >如何删除WordPress中的自定义帖子类型?

以上是WordPress自定义帖子类型的权威指南的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1664
14
CakePHP 教程
1422
52
Laravel 教程
1316
25
PHP教程
1267
29
C# 教程
1239
24
wordpress文章列表怎么调 wordpress文章列表怎么调 Apr 20, 2025 am 10:48 AM

有四种方法可以调整 WordPress 文章列表:使用主题选项、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代码(在 functions.php 文件中添加设置)或直接修改 WordPress 数据库。

如何开始WordPress博客:初学者的分步指南 如何开始WordPress博客:初学者的分步指南 Apr 17, 2025 am 08:25 AM

博客是人们在网上表达观点、意见和见解的理想平台。许多新手渴望建立自己的网站,却因担心技术障碍或成本问题而犹豫不决。然而,随着平台不断发展以满足初学者的能力和需求,现在开始变得比以往任何时候都更容易。 本文将逐步指导您如何建立一个WordPress博客,从主题选择到使用插件提升安全性和性能,助您轻松创建自己的网站。 选择博客主题和方向 在购买域名或注册主机之前,最好先确定您计划涵盖的主题。个人网站可以围绕旅行、烹饪、产品评论、音乐或任何激发您兴趣的爱好展开。专注于您真正感兴趣的领域可以鼓励持续写作

如何在 WordPress 中获取登录用户信息以获得个性化结果 如何在 WordPress 中获取登录用户信息以获得个性化结果 Apr 19, 2025 pm 11:57 PM

最近,我们向您展示了如何通过允许用户将自己喜欢的帖子保存在个性化库中来为用户创建个性化体验。您可以通过在某些地方(即欢迎屏幕)使用他们的名字,将个性化结果提升到另一个水平。幸运的是,WordPress使获取登录用户的信息变得非常容易。在本文中,我们将向您展示如何检索与当前登录用户相关的信息。我们将利用get_currentuserinfo(); 功能。这可以在主题中的任何地方使用(页眉、页脚、侧边栏、页面模板等)。为了使其工作,用户必须登录。因此我们需要使用

如何在父分类的存档页面上显示子分类 如何在父分类的存档页面上显示子分类 Apr 19, 2025 pm 11:54 PM

您想了解如何在父分类存档页面上显示子分类吗?在自定义分类存档页面时,您可能需要执行此操作,以使其对访问者更有用。在本文中,我们将向您展示如何在父分类存档页面上轻松显示子分类。为什么在父分类存档页面上显示子分类?通过在父分类存档页面上显示所有子分类,您可以使其不那么通用,对访问者更有用。例如,如果您运行一个关于书籍的WordPress博客,并且有一个名为“主题”的分类法,那么您可以添加“小说”、“非小说”等子分类法,以便您的读者可以

如何在 WordPress 中按帖子过期日期对帖子进行排序 如何在 WordPress 中按帖子过期日期对帖子进行排序 Apr 19, 2025 pm 11:48 PM

过去,我们分享过如何使用PostExpirator插件使WordPress中的帖子过期。好吧,在创建活动列表网站时,我们发现这个插件非常有用。我们可以轻松删除过期的活动列表。其次,多亏了这个插件,按帖子过期日期对帖子进行排序也非常容易。在本文中,我们将向您展示如何在WordPress中按帖子过期日期对帖子进行排序。更新了代码以反映插件中更改自定义字段名称的更改。感谢Tajim在评论中让我们知道。在我们的特定项目中,我们将事件作为自定义帖子类型。现在

wordpress主机怎么建站 wordpress主机怎么建站 Apr 20, 2025 am 11:12 AM

要使用 WordPress 主机建站,需要:选择一个可靠的主机提供商。购买一个域名。设置 WordPress 主机帐户。选择一个主题。添加页面和文章。安装插件。自定义您的网站。发布您的网站。

如何使用 IFTTT 自动化 WordPress 和社交媒体(及更多) 如何使用 IFTTT 自动化 WordPress 和社交媒体(及更多) Apr 18, 2025 am 11:27 AM

您是否正在寻找自动化 WordPress 网站和社交媒体帐户的方法? 通过自动化,您将能够在 Facebook、Twitter、LinkedIn、Instagram 等平台上自动分享您的 WordPress 博客文章或更新。 在本文中,我们将向您展示如何使用 IFTTT、Zapier 和 Uncanny Automator 轻松实现 WordPress 和社交媒体的自动化。 为什么要自动化 WordPress 和社交媒体? 自动化您的WordPre

如何在 WordPress 中显示查询数量和页面加载时间 如何在 WordPress 中显示查询数量和页面加载时间 Apr 19, 2025 pm 11:51 PM

我们的一位用户询问其他网站如何在页脚中显示查询数量和页面加载时间。您经常会在网站的页脚中看到这一点,它可能会显示类似以下内容:“1.248秒内64个查询”。在本文中,我们将向您展示如何在WordPress中显示查询数量和页面加载时间。只需将以下代码粘贴到主题文件中您喜欢的任何位置(例如footer.php)。queriesin

See all articles