您是否要消除WordPress中的阻止渲染的JavaScri…
您是否要在WordPress中创建自定义分类法?
默认情况下,WordPress允许您使用类别和标签来组织内容。但是,使用自定义分类法,您可以进一步自定义内容排序方式。
在本文中,我们将向您展示如何在WordPress中轻松创建自定义分类法,无论是否使用插件。

尽管创建自定义分类法功能强大,但有很多内容需要介绍。为了帮助您正确地进行此设置,我们在下面创建了一个简单的目录:
- 什么是WordPress分类法?
- 如何在WordPress中创建自定义分类法
- 使用插件创建自定义分类法(简便方法)
- 手动创建自定义分类法(使用代码)
- 显示自定义分类法
- 为自定义帖子添加分类法
- 将自定义分类法添加到导航菜单
- 进一步推广WordPress分类法
什么是WordPress分类法?
WordPress分类法是一种组织帖子和自定义帖子类型的方法。分类一词来自称为Linnaean分类的生物分类方法。
默认情况下,WordPress带有两个分类法,称为分类和标签。您可以使用它们来组织您的博客文章。
但是,如果您使用的是自定义帖子类型,则类别和标签可能并不适合所有内容类型。
例如,您可以创建一个名为“ Books”的自定义帖子类型,并使用一种名为“ topics”的自定义分类法对其进行排序。
您可以添加主题词,例如“冒险”,“浪漫史”,“恐怖”以及您想要的其他书籍主题。这将使您和您的读者可以轻松地按每个主题对书籍进行排序。
分类法也可以是分层的,这意味着您可以拥有小说和非小说等主要主题。然后,您将在每个类别下都有子主题。
例如,小说将冒险,浪漫和恐怖作为子主题。
现在您知道什么是自定义分类法,让我们学习如何在WordPress中创建自定义分类法。
如何在WordPress中创建自定义分类法
我们将使用两种方法来创建自定义分类法。首先,我们将使用插件来创建自定义分类法。
对于第二种方法,我们将向您展示代码方法,以及如何在不使用插件的情况下使用它来创建自定义分类法。
在WordPress中创建自定义分类法(视频教程)
订阅WPBeginner
如果您喜欢书面说明,请继续阅读。
使用插件创建自定义分类法(简便方法)
您需要做的第一件事是安装并激活“自定义帖子类型” UI插件。有关详细信息,请参阅有关如何安装WordPress插件的指南。
在本教程中,我们已经创建了一个自定义帖子类型,并将其称为“书籍”。因此,在开始创建分类法之前,请确保已创建自定义帖子类型。
接下来,转到WordPress管理区域中的CPT UI»“添加/编辑分类法”菜单项,以创建您的第一个分类法。
在此屏幕上,您需要执行以下操作:
- 创建分类标签(将在您的URL中)
- 创建复数标签
- 创建单个标签
- 自动填充标签
第一步是为分类法创建块。URL和WordPress搜索查询中都使用了该条。
它只能包含字母和数字,并且将自动转换为小写字母。
接下来,您将为自定义分类法填写复数和单数名称。
从那里,您可以单击链接“根据所选标签填充其他标签”。如果执行此操作,则插件将自动为您填充其余的标签字段。
现在,向下滚动到“其他标签”部分。在此区域,您可以提供帖子类型的描述。
当您编辑和管理特定自定义分类法的内容时,这些标签将在WordPress仪表板中使用。
接下来,我们有设置选项。在此区域中,可以为创建的每个分类法设置不同的属性。每个选项都有详细说明其功能的描述。
在上面的屏幕截图中,您将看到我们选择将此分类法进行分层。这意味着我们的分类法“主题”可以包含子主题。例如,一个名为“小说”的主题可以具有诸如“幻想”,“惊悚片”,“神秘”等子主题。
在WordPress仪表板的屏幕下方,还有许多其他设置,但是您可以在本教程中按原样保留它们。
现在,您可以单击底部的“添加分类法”按钮以保存您的自定义分类法。
之后,继续并在WordPress内容编辑器中编辑与此分类法关联的帖子类型以开始使用它。
手动创建自定义分类法(使用代码)
此方法要求您将代码添加到WordPress网站。如果您以前没有做过,那么我们建议您阅读有关如何轻松在WordPress中添加代码段的指南。
1.创建分层分类法
让我们从分层分类法开始,该分类法类似于类别,并且可以具有父项和子项。
在主题的functions.php
文件或特定于站点的插件(推荐)中添加以下代码,以创建类似于类别的分层自定义分类法:
//hook into the init action and call create_book_taxonomies when it fires add_action( 'init', 'create_subjects_hierarchical_taxonomy', 0 ); //create a custom taxonomy name it subjects for your posts function create_subjects_hierarchical_taxonomy() { // Add new taxonomy, make it hierarchical like categories //first do the translations part for GUI $labels = array( 'name' => _x( 'Subjects', 'taxonomy general name' ), 'singular_name' => _x( 'Subject', 'taxonomy singular name' ), 'search_items' => __( 'Search Subjects' ), 'all_items' => __( 'All Subjects' ), 'parent_item' => __( 'Parent Subject' ), 'parent_item_colon' => __( 'Parent Subject:' ), 'edit_item' => __( 'Edit Subject' ), 'update_item' => __( 'Update Subject' ), 'add_new_item' => __( 'Add New Subject' ), 'new_item_name' => __( 'New Subject Name' ), 'menu_name' => __( 'Subjects' ), ); // Now register the taxonomy register_taxonomy('subjects',array('books'), array( 'hierarchical' => true, 'labels' => $labels, 'show_ui' => true, 'show_in_rest' => true, 'show_admin_column' => true, 'query_var' => true, 'rewrite' => array( 'slug' => 'subject' ), )); }
不要忘记用您自己的分类标签替换分类名称和标签。您还将注意到,此分类法与Books帖子类型相关联,您需要将其更改为您要使用的任何帖子类型。
2.创建非分层分类法
要创建非分层的自定义分类法(如“标签”),请将此代码添加到主题的functions.php
或特定于站点的插件中:
//hook into the init action and call create_topics_nonhierarchical_taxonomy when it fires add_action( 'init', 'create_topics_nonhierarchical_taxonomy', 0 ); function create_topics_nonhierarchical_taxonomy() { // Labels part for the GUI $labels = array( 'name' => _x( 'Topics', 'taxonomy general name' ), 'singular_name' => _x( 'Topic', 'taxonomy singular name' ), 'search_items' => __( 'Search Topics' ), 'popular_items' => __( 'Popular Topics' ), 'all_items' => __( 'All Topics' ), 'parent_item' => null, 'parent_item_colon' => null, 'edit_item' => __( 'Edit Topic' ), 'update_item' => __( 'Update Topic' ), 'add_new_item' => __( 'Add New Topic' ), 'new_item_name' => __( 'New Topic Name' ), 'separate_items_with_commas' => __( 'Separate topics with commas' ), 'add_or_remove_items' => __( 'Add or remove topics' ), 'choose_from_most_used' => __( 'Choose from the most used topics' ), 'menu_name' => __( 'Topics' ), ); // Now register the non-hierarchical taxonomy like tag register_taxonomy('topics','books',array( 'hierarchical' => false, 'labels' => $labels, 'show_ui' => true, 'show_in_rest' => true, 'show_admin_column' => true, 'update_count_callback' => '_update_post_term_count', 'query_var' => true, 'rewrite' => array( 'slug' => 'topic' ), )); }
注意两个代码之间的区别。对于类分类法,层次参数的值是true;对于标签类分类法,值是false。
同样,在非分层标签(如分类法)的标签数组中,我们为parent_item和parent_item_colon参数添加了null,这意味着在创建父项的UI中不会显示任何内容。
显示自定义分类法
现在,我们已经创建了自定义分类法并添加了一些术语,您的WordPress主题仍然不会显示它们。
为了显示它们,您需要向WordPress主题或子主题添加一些代码。
您需要在要显示条款的模板文件中添加此代码。
通常,它是single.php,content.php或WordPress主题中template-parts文件夹内的文件之一。要弄清楚您需要编辑哪个文件,请参阅我们的WordPress模板层次结构指南以获取详细信息。
您将需要在要显示条款的地方添加以下代码。
<?php the_terms( $post->ID, 'topics', 'Topics: ', ', ', ' ' ); ?>
您也可以将其添加到其他文件中,例如archive.php,index.php以及要显示分类法的其他任何位置。
默认情况下,您的自定义分类法使用archive.php
模板来显示帖子。但是,您可以通过创建为其创建自定义档案显示taxonomy-{taxonomy-slug}.php
。
为自定义帖子添加分类法
现在您已经知道如何创建自定义分类法,下面将通过一个示例来使用它们。
我们将创建一个分类法,并将其称为非小说类。
由于我们有一个名为“ Books”的自定义帖子类型,因此与您创建常规博客帖子的方式类似。
在WordPress信息中心中,转到“书籍»主题”以添加术语或主题。
在此屏幕上,您将看到4个区域:
- 名称
- ug
- 父母
- 描述
在名称中,您将写下要添加的术语。您可以跳过子弹部分,并提供对此特定术语的描述(可选)。
最后,单击“添加新主题”按钮以创建新的分类法。
您新添加的字词现在将显示在右栏中。
现在,您有了一个可以在博客文章中使用的新术语。
您也可以在编辑或编写特定帖子类型下的内容时直接添加术语。
只需转到书籍»添加新页面即可创建帖子。在帖子编辑屏幕上,您会在右侧的列中找到用于选择或创建新术语的选项。
添加条款后,您可以继续发布该内容。
根据该条款提交的所有帖子都可以通过您自己的URL在您的网站上访问。例如,小说主题下的帖子将出现在以下URL:
https://example.com/subject/fiction/
将自定义分类法添加到导航菜单
现在,您已经创建了自定义分类法,您可能希望显示在网站的导航菜单中。
转到外观»菜单,然后在自定义分类标签下选择要添加的字词。
不要忘记单击“保存菜单”按钮来保存设置。
现在,您可以访问您的网站以查看菜单。
有关更多详细信息,请参见有关如何在WordPress中创建下拉菜单的分步指南。
进一步推广WordPress分类法
使用自定义分类法可以做很多事情。例如,您可以在侧边栏小部件中显示它们的方式,或者为每个术语添加图像图标。
您还可以在WordPress中为自定义分类添加启用RSS提要,并允许用户订阅各个条款。
如果要自定义分类页面的布局,则可以查看Beaver Themer或Divi。它们都是拖放式WordPress页面构建器,可让您无需任何编码即可创建自定义布局。