2011-02-15 85 views
1

我已在Zend_Navigation配置如下现在Zend_Navigation渲染子

-Item1 
-Item2 
    |---SubItem2 1 
    |---SubItem2 2 
    |---SubItem2 3 (Visible = false) 
-Item3 
    |---SubItem3 1 
    |---SubItem3 2 
-Item4 
    |---SubItem4 1 

,在应用程序中,每当用户在分项(可见= TRUE),子菜单正确呈现。但是每当用户在“SubItem2 3”之类的不可见页面上时。子菜单不呈现。

我可以通过做setRenderInvisible()来渲染面包屑,它可以工作。

我无法呈现子菜单。

以下是我用来渲染菜单和子菜单的代码。

它在布局文件中。

  <div id="top-nav-menu"> 
      <?php echo $this->navigation()->menu()->setMaxDepth(0)->setUlClass('topNav'); ?> 
     </div> 
     <div class="clear"></div> 

     <div id="sub-nav-menu"> 
      <?php echo $this->navigation()->menu()->setMaxDepth(1)->setMinDepth(1)->setOnlyActiveBranch(true)->setUlClass('subNav') ; ?> 
      <p style="display:inline;">&nbsp;</p> 
     </div> 

任何信息/指针表示赞赏。

感谢,

+1

你可以提供一点你的Zend_Navigation设置和导航生成?什么是使用的容器格式(XML,PHP数组)? – DrDol 2011-02-15 21:50:31

回答

1

好吧,能够从另一个问题的一些信息来解决此问题:Zend_Navigation with hidden Pages

的主要问题是,当可见=假,没有活动的页面。由于这个原因,没有菜单项被渲染。所以现在在控制器帮手中,除了在其他线程中建议的内容外,我还检查是否有任何页面处于活动状态。如果没有页面处于活动状态,我将默认页面设置为活动状态,并且菜单呈现正常。

希望这可以帮助别人。谢谢!