我有一个自定义的post tipe(“artigo”),这个CPT有一个注册的分类(“artigo\\u eixo”),其中有3个注册的术语。
I want to show, in that page, a sidebar listing all terms, except the current term, 在列出所有带有该术语的帖子的页面中(http://localhost/mytaxonomy/current_term/)
但是,我无法从查询中排除当前术语。
我试图获得一个分类术语列表,但从该列表中排除了某个术语。我试着按照codex的例子来做,但我没有成功,无论是使用哪种方法get_terms()
或WP_Term_query()
.
共有3个术语,ID分别为13、14、15。没有具有这些ID的帖子或CPT项目。
我刚测试过get_queried_object_id()
它似乎返回所显示术语的正确术语ID——也就是说,如果我查看ID为13的术语的URL,函数将返回13,依此类推。
它也不能使用硬编码的值,无论是字符串、整数还是这些类型的数组。两者都不起作用:
\'exclude\' => 14
\'exclude\' => \'14\'
\'exclude\' => array(14)
\'exclude\' => array(\'14\')
PHP或WP调试日志未显示任何错误。
get\\u术语
if (is_tax( \'artigo_eixo\' )) {
$current_eixo = get_queried_object_id();
$args = array(
\'taxonomy\' => \'artigo_eixo\',
\'exclude\' => $current_eixo
);
$eixos = get_terms( $args );
WP\\u Term\\u查询
if (is_tax( \'artigo_eixo\' )) {
$current_eixo = get_queried_object_id();
$args = array(
\'taxonomy\' => array(\'artigo_eixo\'),
\'exclude\' => $current_eixo
);
$eixos = new WP_Term_Query( $args );
$eixos = $eixos->terms;