跳到主要内容

WordPress允许您创建自己的自定义内容类型。这些内容类型称为自定义帖子类型。您可以使用它们来添加自定义内容,例如产品,评论,食谱等。在本文中,我们将分享12个最有用的WordPress自定义帖子类型教程。

1.什么时候需要自定义帖子类型

在WordPress网站上开始创建自定义帖子类型或分类法之前,评估您的需求很重要。很多时候,您可以使用默认的WordPress帖子和页面获得相同的结果。

借助内置的类别和标签,您可以按多种不同方式对内容进行排序。使用页面,您可以设置具有父子关系的内容的层次结构。

如果不清楚,请参阅本指南,了解何时需要WordPress中的自定义帖子类型或分类法。

十二种最有用的wordpress自定义帖子类型教程
十二种最有用的wordpress自定义帖子类型教程

2.添加自定义帖子类型的图标

创建自定义帖子类型时,如果未提供图标,则WordPress将使用默认的帖子图标。您可以将自己的图标添加到自定义帖子类型。这些图标显示在您的WordPress管理栏中。

WordPress在管理区域中使用字体图标,以确保它们在所有设备和屏幕尺寸上均美观。将字体图标添加到自定义帖子类型的最简单方法是使用CPT自定义图标插件。只需安装并激活插件,然后访问插件的设置页面即可添加图标。

另一种方法是在使用CPT UI插件创建自定义帖子类型时添加图标。

有关更多详细说明,请参阅本教程,了解如何在WordPress中为自定义帖子类型添加图标。

3.创建自定义帖子类型存档页面

多亏了CPT UI插件,在WordPress中添加自定义帖子类型变得非常容易。但是,许多初学者很难在其网站上显示其自定义帖子类型。

要添加自定义帖子类型档案页面,首先需要确保为自定义帖子类型启用档案。在大多数情况下,它们是,但如果不是,则需要启用它们。CPT UI插件在高级选项下具有一个复选框,以启用存档。

现在,如果您使用漂亮的永久链接,则可以通过访问如下URL来访问自定义帖子类型档案页面:

http://www.example.com/products/

用您自己的域名替换example.com,用您的自定义帖子类型名称替换产品。如果看不到自定义帖子类型,请访问设置»永久链接,然后单击保存更改按钮。这将更新您的永久链接结构,现在您应该可以看到自定义帖子类型存档页面。

有关更多详细说明,请在自定义帖子类型档案页面上查看本指南。

您还可以将菜单项添加到导航菜单中的自定义帖子类型。只需转到外观»菜单,然后单击“自定义链接”标签。接下来,添加您的自定义帖子类型名称和URL。

4.自定义帖子类型的RSS提要

WordPress带有一个内置的RSS生成器,用于所有内容类型,分类法,作者和基于日期的存档。它使用适当的URL结构来查询数据库并生成您要查看的RSS feed。

例如,要查看您的自定义帖子类型“电影”的RSS提要,您将添加以下URL:

http://www.example.com/feed/?post_type=movies

有关更多详细信息,请参阅如何为WordPress中的自定义帖子类型制作单独的RSS feed。

5.将自定义帖子类型添加到您的主要RSS Feed

默认情况下,WordPress仅将您的博客文章包含在站点的主要RSS feed中。这意味着您的自定义帖子类型内容对您的主要RSS feed订阅者不可见。

通过将以下代码添加到主题的functions.php文件或特定于站点的WordPress插件中,您可以轻松地将自定义帖子类型包括到主RSS feed中。

1个23456functionmyfeed_request($qv) {    if(isset($qv['feed']) && !isset($qv['post_type']))        $qv['post_type'] = array('post', 'books', 'movies');    return$qv;}add_filter('request', 'myfeed_request');

用您自己的自定义帖子类型替换书籍和电影。

了解有关如何将自定义帖子类型添加到主要WordPress RSS feed的更多信息。

6.搜索表单以查找自定义帖子类型

默认的WordPress搜索功能非常有限。特别是如果您在WordPress网站上使用自定义帖子类型。您可以将自定义Google搜索表单添加到WordPress网站,但是即使该表单也不允许用户选择搜索参数。

另一个解决方案是使用SearchWP之类的插件,该插件可让您创建高级搜索表单,并能够搜索所有自定义帖子类型,分类法和自定义字段。

如果您希望构建自己的自定义搜索表单,那么这就是您需要做的。首先,通过将此代码添加到您的子主题的searchform.php文件中,在搜索表单中添加您的自定义帖子类型隐藏字段。

<input type="hidden"name="post_type[]"value="articles"/><input type="hidden"name="post_type[]"value="post"/><input type="hidden"name="post_type[]"value="videos"/> <input type="hidden"name="post_type[]"value="books"/> 

此代码只是为您的自定义帖子类型添加隐藏字段,将值替换为您自己的自定义帖子类型。下一步是告诉WordPress如何处理这些字段。在主题的search.php文件中的循环之前添加以下代码:

<form role="search"method="get"id="searchform"action="<?php echo home_url( '/' ); ?>"><input type="text"name="s"id="s"<?php if(is_search()) { ?>value="<?php the_search_query(); ?>"<?php } else{ ?>value="Enter keywords &hellip;"onfocus="if(this.value==this.defaultValue)this.value='';"onblur="if(this.value=='')this.value=this.defaultValue;"<?php } ?> /><br />     <?php $query_types= get_query_var('post_type'); ?>     <input type="checkbox"name="post_type[]"value="articles"<?php if(in_array('articles', $query_types)) { echo'checked="checked"'; } ?> /><label>Articles</label><input type="checkbox"name="post_type[]"value="post"<?php if(in_array('post', $query_types)) { echo'checked="checked"'; } ?> /><label>Blog</label><input type="checkbox"name="post_type[]"value="books"<?php if(in_array('books', $query_types)) { echo'checked="checked"'; } ?> /><label>Books</label><input type="checkbox"name="post_type[]"value="videos"<?php if(in_array('videos', $query_types)) { echo'checked="checked"'; } ?> /><label>Videos</label>     <input type="submit"id="searchsubmit"value="Search"/></form>

7.为自定义帖子类型添加粘性帖子

便利贴是WordPress中的一项功能,可让您添加特色帖子。默认情况下,它仅适用于博客文章。

您还可以通过安装和激活“粘性自定义帖子类型”插件为您的自定义帖子类型启用它。激活后,转到“设置”»“阅读”,然后向下滚动到“粘性自定义帖子类型”部分。

接下来,您需要选择要启用此选项的自定义帖子类型。

有关更多详细信息,请参阅本教程,了解如何在WordPress中为自定义帖子类型添加粘性帖子。

8.在自定义帖子类型上禁用Disqus

如果您在WordPress中使用Disqus评论系统,那么您会注意到,您的Disqus评论框将开始出现在所有自定义帖子类型上。如果您不希望用户在这些自定义帖子类型上发表评论,那么您将需要为某些选择性的帖子类型手动禁用Disqus。只需将此代码段添加到主题的functions.php文件或特定于站点的插件中即可。

add_filter( 'comments_template', 'wpb_block_disqus', 1 );functionwpb_block_disqus($file) {if( 'custom_post_type_name'== get_post_type() )remove_filter('comments_template', 'dsq_comments_template');return$file;
}

不要忘记用您自己的自定义帖子类型名称替换custom_post_type_name。有关更多详细说明,请参阅我们的指南,了解如何在WordPress中自定义帖子类型上禁用Disqus。

9.以自定义帖子类型添加用户提交的内容

有时,您可能希望允许用户在您的网站上提交自定义帖子类型的内容。例如,电影评论,食谱等。

一种方法是让用户访问您的WordPress管理区域并为他们分配作者用户角色。但是,如果您不希望这样做,那么还有另一种方法。

为此,您将需要Gravity Forms插件。它使您可以添加网站访问者可以使用的公共内容提交表单。

安装Gravity Forms之后,您还需要安装并激活Gravity Forms + Custom Post Types插件。

现在创建一个新表单,您会注意到将有一个选项将每个字段映射到您的自定义帖子类型。有关更多详细说明,请参阅我们的教程,该教程如何在WordPress中为自定义帖子类型添加用户提交的内容。

10.切换或转换自定义帖子类型

您可能会遇到必须合并或转换自定义帖子类型的情况。您可能还希望将项目从一种帖子类型移动到另一种。

只需安装并激活Post Type Switcher插件即可。激活后,转到帖子»所有帖子。如果是自定义帖子类型,则转到显示该帖子类型中所有项目的屏幕。

选择您要移动的项目或帖子,然后单击快速编辑链接。您会注意到一个新的下拉菜单,可用于更改该项目的帖子类型。

有关更多详细说明,请参阅有关如何在WordPress中切换或转换自定义帖子类型的教程。

11.使用自定义帖子类型作为分类法

是的,您没看错,您可能在想为什么使用CPT作为分类法?为什么不只创建自定义分类法呢?假设您有一个针对书籍的自定义帖子类型和一个针对作者的自定义帖子类型。现在,您可能需要将作者与他们所写的书联系起来。您可以为作者创建自定义分类法,但是您将拥有一个作者分类法和一个帖子类型,这只会增加混乱。

只需安装并激活CPT-onomies插件即可。它允许您通过使用自定义帖子类型作为分类法在帖子类型之间建立关系。

使用此插件,下次添加书时,可以选择作者作为CPT-onomy,并显示该作者写的所有书。了解有关使用自定义帖子类型作为分类法的更多信息。

12.帖子类型的自定义元框

自定义元框允许您将自定义字段添加到WordPress帖子编辑器屏幕中。这样,您可以为帖子类型创建其他输入字段。在WordPress中创建自定义元字段的最简单方法是使用“高级自定义字段”插件。

安装插件后,只需单击WordPress管理栏中的“自定义字段”,然后单击“添加新项”。按照屏幕上的说明创建一组要添加到自定义帖子类型的自定义字段。

这是您的帖子类型的自定义字段面板将显示在帖子编辑屏幕上的方式:

您可以通过修改主题模板来显示输入到自定义字段中的数据。例如,我们将使用<?php the_field('imdb_url'); ?>模板标记显示IMDB URL自定义字段。

您还可以[acf field="{$imdb_url}"]在帖子类型中使用短代码来显示自定义字段数据。

这就是我们希望本文帮助您了解WordPress中自定义帖子类型的一些绝妙技巧。

回到顶部