如何在菜单中添加分类类型?

时间:2020-03-14 作者:Robert Andrews

我有一个自定义的分类法,“事件”。我想为此添加对象taxonomy type 作为菜单项(外观>菜单)。

我不是说我想添加一个事件术语。我指的是分类学本身。

对于post type (例如,我的自定义帖子类型“视点”)可以将其添加为菜单项(在“外观”>“菜单”中,只需转到菜单生成器左侧的我的帖子类型,将其打开,转到“全部查看”,然后选择最顶部的项目“视点存档”)。。。

enter image description here

但是,对于taxonomy archive, 没有等效的“[分类]档案”,没有可选择的内容。。。

enter image description here

我知道我可以向任何前端目标添加自定义链接。事实上,我的“事件”都是在主题页上输出的页面事件。php。但这并不是指向分类法对象的真正指针。

这是因为WordPress不知道分类法归档索引页吗?我的理解是,这不是一件事。因此,我编写了页面事件。php作为页面模板,代码内容会弹出相关查询以列出术语。

有人知道变通方法吗?

我正在考虑在菜单项中添加一个ACF字段,因为ACF的“ACF Taxonomy Selector Field“加载项允许我指向真正的分类对象。

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

这是因为WordPress不知道分类法归档索引页吗?我的理解是,这不是一件事。因此,我编写了页面事件。php作为页面模板,代码内容会弹出相关查询以列出术语。

对WP中的所有前端页面都是post查询。WP查看查询以确定要加载哪个模板,主循环显示帖子。

如果查询是针对单个帖子的,则它是一个单数查询,例如博客帖子、页面等。如果显示多篇帖子,则它是一个存档。

因此,WP没有用户档案或术语档案的概念。您没有看到分类法本身的页面的原因是因为没有分类法。你可以通过example.com/taxonomy/term 和删除/term, 您将获得404或重定向到其他位置。

同样,如果我们看看重写规则是如何工作的,URL会与正则表达式匹配,从而将URL转换为WP_Query 对象整个URL解析堆栈都是为了支持post查询而构建的。

话虽如此,您可以构建这样一个页面,但您需要为每个分类法根页面创建一个重写规则,并添加查询变量,然后查找这些变量并手动加载模板,这不是为胆小鬼准备的。此外,这些“虚拟页面”不会显示在菜单创建UI中。

请记住,在未来一两年内,菜单创建过程将作为整个站点编辑项目的一部分进行重大更改和大修,特别是最近引入的导航菜单块(编写于2020年)

相关推荐

Make taxonomy query dynamic

我对多个页面使用相同的页面模板。-> page-base.php在使用此模板的每个页面上,我想显示使用CPT.我的问题是,如何使数组动态化,以自动更改“分类法”?这是我当前的代码<?php $terms = get_terms( array( \'taxonomy\' => \'catmaison\', \'hide_empty\' => false,