php – 仅在菜单中呈现Zend_Navigation对象的一部分

我的布局中有很多导航菜单.主菜单和子菜单.

单击主菜单上的项目时,它会显示哪个项目处于活动状态.在子菜单中加载页面时,主菜单会丢失其上下文,并且不会显示哪个项目处于活动状态.

我已经使用XML配置文件配置了我的导航,这正在我的Bootstrap.PHP中读取

$navContainerConfig = new Zend_Config_Xml(APPLICATION_PATH . '/configs/navigation.xml', 'home');
$navContainer = new Zend_Navigation($navContainerConfig);
$this->view->navigation($navContainer);

$layout = $this->bootstrap('layout')->getResource('layout');
$layout->getView()->navigation($navContainer);

然后在我的控制器中生成一个子树菜单

$subTree = $this->view->navigation()->findOneById('settings_index');
$this->view->subTree = $subTree;

在我的布局中,我有主导航,并显示了子树:

//main menu
echo $this->navigation()->menu()->renderMenu(null,array('maxDepth'   =>  0));

// ... some stuff ....

//subtree menu
echo $this->navigation()->menu()->renderMenu($this->subTree,array('maxDepth' => 0,'ulClass'=>'nav_sub'));

如何在布局中显示菜单而主菜单不会丢失它的上下文?

解决方法:

尝试下一步

// main menu
echo $this->navigation()->menu()->renderMenu(null,array('maxDepth'   =>  0));

// sub menu
echo $this->navigation()->menu()->renderMenu(null,array('minDepth' => 1, 'maxDepth'   =>  1));

两个菜单都应该有适当的“活动”类.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...