我一直在努力寻找如何获取当前页面的特定分类术语的方法,以便随后可以在页面上查询具有相同术语的其他帖子类型。




页面1具有分类术语-教育政策

page.php包含四个部分:

输出页面的标准循环,但随后有三个后续查询
具有分类学术语的事件的循环-教育政策
具有分类学术语的报告的循环-教育政策
具有分类学术语的人的循环-教育政策



我做了页面特定的模板,在这里我可以将术语硬编码到额外的循环中,但是我需要弄清楚如何动态地进行操作(原本应该是四到五页现在是四十或五十)。

我发现了一些类似的问题,但是没有一个我可以真正找到实现方法的问题。

获取最新信息页面的分类法
这在实际询问的内容上有点令人困惑。

在自定义single-post-type.php模板页面上获取属于自定义分类法的术语ID

我希望这很有意义,非常感谢。

#1 楼

嗯,如果您为“页面”对象类型正确注册了一个分类法,然后将该分类法的术语分配给了一个页面……我相信您可以通过以下方式访问该分类法和术语条: br />
get_query_var( 'taxonomy' )
get_query_var( 'term' )


如果您print_r($wp_query),则在生成显示的当前页面时,您将看到所有参数。通过上面的代码,您可以从$wp_query访问这些参数。

然后要获取具有完整信息的term对象,您可以使用get_term_by函数,就像这样

$term = get_term_by( 'slug', get_query_var('term'), get_query_var('taxonomy') );
echo $term->name;


这会打印出该术语的“好”名称。

希望有帮助。我从未使用过分类法。
让我知道您的学习方法。

#2 楼

只需复制以下代码即可粘贴

这将打印您当前页面的分类名称和描述(可选)

<?php 
   $tax = $wp_query->get_queried_object();
   echo ''. $tax->name . '';
   echo "<br>";
   echo ''. $tax->description .''; 
?>


#3 楼

可能是您需要启用搜索功能才能启用分页功能

声明自定义分类法时,应禁用搜索排除功能。


exclude_from_search => false


解决了我的问题。