首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Wordpress 3.3.2的菜单中隐藏/显示孙女页面

问在Wordpress 3.3.2的菜单中隐藏/显示孙女页面
EN

Stack Overflow用户
提问于 2012-05-02 15:31:33
回答 1查看 672关注 0票数 0

我有菜单问题,请帮我一下。

我使用wordpress 3.3.2和主题21.11。

我使用两个模板,默认的wordpress展示和一个名为products的自定义页面模板。

我现在有这个子导航树(展示模板):

  • Agriculture
  • Aerospace
  • Defence
  • Industrial

  • -Markets & products

​

我用来获得上述结果的代码是:

代码语言:javascript
复制
       <?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

  • 市场营销与产品
      • 孙女第1页
      • 孙辈页面

​

代码语言:javascript
复制
- Aerospace 
    - Grandchild page 1
    - Grandchild page 2

​

代码语言:javascript
复制
- Defence
- Industrial

​

农业孙子网页展示,但航空孙子网页应该隐藏。

我使用的当前代码是:

代码语言:javascript
复制
    <?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的父级,它有孩子、航空航天和农业,他们也有孩子(营销的孙子)。

有什么方法可以让我展示:在那个页面上是市场营销的孩子,在那个页面上是农业的孩子(例如),或者是在其中一个孩子的页面上--所以只有这些孙辈和农业的兄弟姐妹(市场营销的孩子),而不是他们兄弟姐妹的孩子?

任何帮助都很感激。:)

EN

回答 1

Stack Overflow用户

发布于 2012-05-02 15:43:21

您使用的if 正在引起冲突。

对每个页面使用一个meta value。它确定要在屏幕上显示的菜单类型。

ELSE:

使用此代码,菜单将显示它将始终显示完整的菜单。

当您在Agriculture页面上时,它将检查它是否有父页面,在这种情况下,Agriculture页面的父页面是Marketing & products页面,然后它选择父页面。

Marketing & products的所有子页面都显示在链接中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10416920

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档