我所拥有的是 Wordpress 中非常深的菜单结构,在某些页面中有 5 个级别。我需要的是当前页面上方每个父母的菜单。例如,如果我在这里:
Main / Sub / SubSub / SubSubSub我想看到,在彼此之上:
- 所有主要项目的菜单
- Sub 中所有项目的菜单
- SubSub 中所有项目的菜单,包括 SubSubSub
我正在使用这样的 wp_list_pages 函数:
<?php
if ( $post->post_parent ) {
$args = array(
'child_of' => $post->ID,
'depth' => 1,
'sort_column' => 'post_date',
'sort_order' => 'DESC',
'title_li' => ''
);
echo '<nav id="subnav"><ul>';
wp_list_pages( $args );
echo '</ul></nav>';
} ?>
但是我不知道我是在2级还是以下。我找到了这个位的祖先菜单(总是显示):
'child_of' => get_post_top_ancestor_id()
但是我不能让它为不是最高祖先的每个其他父母列出一个菜单。我尝试在这里修改此代码: https ://wordpress.stackexchange.com/questions/15141/list-wordpress-custom-menus-active-parent-levels-children-as-separate-menu
并像这里一样遍历所有父母: http ://wordpress.org/support/topic/get-and-display-parent-pages-of-a-menu
主要问题是我不是一个 PHP 程序员,所以创建自己的函数并不是一个真正的选择。任何帮助深表感谢