使用自定义菜单的当前分支中仅包含菜单项的子页

时间:2012-03-17 作者:hedu

虽然我做了彻底的研究,但还是找不到解决办法。只有接近的解决方案。

我的自定义菜单(“顶部”)显示此结构(您可以看到其中的一部分):

page 1
  subpage 1.1
    category A
    subsubpage 1.1.1
    subsubpage 1.1.2
  subpage 1.2
    category B
    subsubpage 1.2.1
    subsubpage 1.2.2
  subpage 1.3
    category C
    subsubpage 1.3.1
    subsubpage 1.3.2
page 2
page 3
如果不使用CSS(实际结构要大得多),当用户当前查看第1页(仅其子项)时,我希望在侧栏中显示此内容:

  subpage 1.1
  subpage 1.2
  subpage 1.3
当用户当前查看子页面1.1或其任何自定义菜单子页面(包括A类帖子)时:

  subpage 1.1
    category A
    subpage 1.1.1
    subpage 1.1.2
  subpage 1.2
  subpage 1.3
换言之:

可见菜单项:

二级菜单项(如果有的话)二级菜单项的子菜单项仅适用于当前分支中的项目(当前菜单父菜单、当前菜单父菜单、当前菜单项)

    我尝试了该论坛中提供的一些自定义Walker类,但没有一个做到这一点。

    我还尝试了插件高级菜单小部件(http://wordpress.org/extend/plugins/advanced-menu-widget/), 非常(!)很接近,但里面似乎有个漏洞。使用这些设置通常可以完成以下工作:

    显示层次结构:仅相关子项开始深度:1不幸的是,在我的示例中,它没有提供查看类别A或其帖子的结果。

    提前谢谢你。

1 个回复
SO网友:hedu

使用Ján Bočinec的插件“Advanced menu widget”可以非常接近。除了一个大的例外:当你查看a类帖子时,整个子菜单都消失了(除了剩下的空的<;ul>;<;/ul>;-构造)。

因此,我们仍在寻找可行的解决方案。我们现在将尝试使用Gecka子菜单插件和大量CSS。但我担心,即使这个插件也不能提供足够的CSS类。

因此,这是半个答案;-)

结束

相关推荐

我正在扩展Walker_Nav_Menu:如何获取当前项的子元素的数量?

我正在尝试扩展Walker\\u Nav\\u菜单Walker,以对WP输出菜单的方式进行一些更改。我必须重写的方法是start\\u el,因此我创建了Walker并复制了基本方法:<?php class myCustom_Walker_Nav_Menu extends Walker_Nav_Menu { function start_el(&$output, $item, $depth, $args) { global $wp_query;