Wordpress 基于自定义分类归档页修改导航菜单的方法
我有一个导航菜单,它是由wordpress中的自定义分类法生成的。默认情况下,该菜单显示父级、第一个子级和第二个子级。例如:Wordpress 基于自定义分类归档页修改导航菜单的方法,wordpress,custom-taxonomy,Wordpress,Custom Taxonomy,我有一个导航菜单,它是由wordpress中的自定义分类法生成的。默认情况下,该菜单显示父级、第一个子级和第二个子级。例如: 电影制作>制作>摄影 如果用户选择了第二个孩子电影我希望页面发生变化,导航菜单随之更新。例如,在新页面上,我希望它显示第二个孩子和下面的其他孩子 Cinematography > Lenses > Cameras > Lighting 我已经编写了代码,但正在尝试正确的方法。将菜单设置为正确点
电影制作>制作>摄影
如果用户选择了第二个孩子电影
我希望页面发生变化,导航菜单随之更新。例如,在新页面上,我希望它显示第二个孩子和下面的其他孩子
Cinematography > Lenses
> Cameras
> Lighting
我已经编写了代码,但正在尝试正确的方法。将菜单设置为正确点的最佳方法是什么?我想我可以使用几个选项
$term_id = get_queried_object()->term_id;
然后,您可以使用基于父菜单构造菜单:
$taxonomy_name = 'taxonomy_name';
$term_children = get_term_children($term_id, $taxonomy_name);
Obs.:用自定义分类名称替换分类名称
get\u term\u children
通常返回一个包含子项ID的数组:
array(4) {
[0]=> int(10)
[1]=> int(20)
[2]=> int(30)
[3]=> int(34)
}
最后,您可以生成自定义菜单:
<ul>
<li>Cinematography
<ul>
<?php
foreach($term_children as $child_id) :
$term = get_term_by('id', $child_id, $taxonomy_name);
?>
<li>
<a href="<?php echo get_term_link($child_id, $taxonomy_name); ?>">
<?php echo $term->name; ?>
</a>
</li>
<?php endforeach; ?>
</ul>
</li>
</ul>
- 电影摄影
-
谢谢,我需要根据自己的需要对其进行修改,但这使概念得到了完美的理解。