我在zend2中創建了一個到目前爲止工作的菜單。完美。Zend2導航 - 渲染級別1分支頭+孩子如果活動
- Parent 1
-- Child Page 1
-- Child Page 2
-- Child Page 3
- Parent 2
-- Child Page 1
-- Child Page 2
-- Child Page 3
- Parent 3
-- Child Page 1
-- Child Page 2
-- Child Page 3
現在我只想在父活動時渲染子頁面。 比方說,父母2將積極渲染菜單是這樣的:
- Parent 1
- Parent 2
-- Child Page 1
-- Child Page 2
-- Child Page 3
- Parent 3
這是我global.php配置文件
return array(
'navigation' => array(
'default' => array(
array(
'label' => 'Parent 1',
'controller' => 'controllerone',
'pages' => array(
array(
'label' => 'Page1',
'controller' => 'controllerone',
'action' => 'page-one',
),
array(
'label' => 'Page2',
'controller' => 'controllerone',
'action' => 'page-two',
),
array(
'label' => 'Page3',
'controller' => 'controllerone',
'action' => 'page-one',
)
),
),
array(
'label' => 'Parent 2',
'controller' => 'controllertwo',
'pages' => array(
array(
'label' => 'Page1',
'controller' => 'controllertwo',
'action' => 'page-one',
),
array(
'label' => 'Page2',
'controller' => 'controllertwo',
'action' => 'page-two',
),
array(
'label' => 'Page3',
'controller' => 'controllertwo',
'action' => 'page-one',
)
),
),
array(
'label' => 'Parent 3',
'controller' => 'controllerthree',
'pages' => array(
array(
'label' => 'Page1',
'controller' => 'controllerthree',
'action' => 'page-one',
),
array(
'label' => 'Page2',
'controller' => 'controllerthree',
'action' => 'page-two',
),
array(
'label' => 'Page3',
'controller' => 'controllerthree',
'action' => 'page-one',
)
),
),
)
),
'service_manager' => array(
'factories' => array(
'navigation' => 'Zend\Navigation\Service\DefaultNavigationFactory',
),
),
);
這就是我如何使我的佈局中導航
<?php
echo $this
->navigation('navigation')
->menu();
?>
任何幫助將不勝感激!
我不認爲這解決了我的問題,因爲我需要渲染分支頭部,即使他們不活動。如果分支頭部活動,它的孩子也應該被渲染。 – n00b