我的网站(在我的header.php
但当我打开一篇帖子时,它就消失了:
<div id="dep-menu">
<?php global $post;
if (!is_front_page()) { // so I don\'t display a link on the homepage saying "Homepage"
if($post->post_parent) { //if page has parent
$children = wp_list_pages("title_li=&include=".$post->post_parent."&echo=0"); //include a link to the parent
$children.= wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0"); //add the child pages
} else {
$children = wp_list_pages("title_li=&include=".$post->ID."&echo=0");//parent link
$children.= wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");//children
}
if ($children) { ?>
<ul>
<?php echo $children; ?>
</ul>
<?php }
}
?>
</div>
这对我的页面来说非常有效。此网站上的页面有效
get x posts from y category and display title and excerpt
. 任何页面的深度都不超过2,这意味着任何url都不超过
domain.com/cat-x/cat-y/
菜单可以在这些页面上运行。
当我打开url方案为的帖子时domain.com/cat-x/post-title/
菜单掉了下来。
BEGIN EDIT
由于似乎有些混乱,我的页面层次结构如下:
parent 1
child 1-1
child 1-2
parent 2
child 2-1
child 2-1
parent 1
对应于类别名称,单击时,子菜单显示
parent 1 | child 1-1 | child 2-1
显示每个帖子,显示其同名类别中的所有帖子。
然而,当我点击帖子时,子菜单消失了,我需要它保持持久性。
END EDIT
从本质上讲,如何再次显示菜单?据我所知,它应该留在那里,因为它仍然符合url模式,并且具有相同的类别。
最合适的回答,由SO网友:hannit cohen 整理而成
您的菜单是面向页面的。页面具有父级,查询会询问父级和同级。
访问帖子时,帖子没有hirarcy,wp\\u list\\u页面将不起作用,您无法按父级查询帖子。
最大的问题是,当访问单个帖子时,您希望显示什么。。。
如果要显示主站点导航,yuo可以执行以下操作:
<div id="dep-menu">
<?php global $post;
if (!is_front_page()) { // so I don\'t display a link on the homepage saying "Homepage"
if (is_page()) {
if($post->post_parent) { //if page has parent
$children = wp_list_pages("title_li=&include=".$post->post_parent."&echo=0"); //include a link to the parent
$children.= wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0"); //add the child pages
} else {
$children = wp_list_pages("title_li=&include=".$post->ID."&echo=0");//parent link
$children.= wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");//children
}
} else {
$children = wp_list_pages("title_li=&echo=0&depth=1"); //list top level pages
}
if ($children) { ?>
<ul>
<?php echo $children; ?>
</ul>
<?php }
}
?>
</div>