我正在尝试从模块中添加模块特定的导航项。我可能做错了。到目前为止,我所拥有的是:
config/autoload/navigation.global.php(到目前为止有效)
<?php
return array(
'navigation' => array(
'default' => array(
array(
'label' => 'Home',
'route' => 'home',
'order' => -100,
'pages' => array(
),
),
),
),
);
module/Books/Module.php:(我正在尝试在Home 下添加“Books”导航项(不是内联))
class Module
{
public function onPreDispatch($e) {
$pages = array(
array(
'label' => 'Books',
'route' => 'books',
),
);
$navigation = $e->getParam('application')->getServiceManager()->get('navigation');
$navigation->findOneByRoute('home')->addPages($pages);
}
/* ... */
}
所以在上面的例子中(路线是正确的),我没有收到错误,事件在预调度时触发,但没有任何东西添加到导航容器中。
我想要完成的是如下导航:
Home
|-> Books
|-> Module2
|-> etc..