我有菜单问题,请帮我一下。
我使用wordpress 3.3.2和主题21.11。
我使用两个模板,默认的wordpress展示和一个名为products的自定义页面模板。
我现在有这个子导航树(展示模板):
我用来获得上述结果的代码是:
<?php
//$children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=1&depth=1');
if($post->post_parent && $post->post_parent!=0){
$children = wp_list_pages("title_li=&sort_column=menu_order&child_of=".$post->post_parent."&echo=0&depth=2");
}else{
$children = wp_list_pages("title_li=&sort_column=menu_order&child_of=".$post->ID."&echo=0&depth=1");
}
if ($children) { ?>
<div id="subNav">
<ul>
<?php echo $children; ?>
</ul>
</div>
<?php } ?>当我选择农业页面(产品模板)时,我会看到以下结构:
2
- Aerospace
- Grandchild page 1
- Grandchild page 2
- Defence
- Industrial
农业孙子网页展示,但航空孙子网页应该隐藏。
我使用的当前代码是:
<?php
//$children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=1&depth=1');
// && $post->post_parent!=0
if($post->post_parent){
//siblings
$textTest = 'siblings';
$children = wp_list_pages("title_li=&sort_column=menu_order&child_of=".$post->post_parent."&echo=0&depth=2");
}else{
$textTest = 'children';
$children = wp_list_pages("title_li=&sort_column=menu_order&child_of=".$post->ID."&echo=0&depth=1");
}
if ($children) { ?>
<div id="subNav">
<? echo $textTest;?>
<ul>
<?php echo $children; ?>
</ul>
</div>
<?php } ?>因此,我想知道的是;假设:营销页面有一个0的父级,它有孩子、航空航天和农业,他们也有孩子(营销的孙子)。
有什么方法可以让我展示:在那个页面上是市场营销的孩子,在那个页面上是农业的孩子(例如),或者是在其中一个孩子的页面上--所以只有这些孙辈和农业的兄弟姐妹(市场营销的孩子),而不是他们兄弟姐妹的孩子?
任何帮助都很感激。:)
发布于 2012-05-02 15:43:21
您使用的if 正在引起冲突。
对每个页面使用一个meta value。它确定要在屏幕上显示的菜单类型。
ELSE:
使用此代码,菜单将显示它将始终显示完整的菜单。
当您在Agriculture页面上时,它将检查它是否有父页面,在这种情况下,Agriculture页面的父页面是Marketing & products页面,然后它选择父页面。
Marketing & products的所有子页面都显示在链接中。
https://stackoverflow.com/questions/10416920
复制相似问题