我有Zend导航问题并找到菜单的活动元素。
我用模块构建了一个Zend 1.12应用程序,并从xml文件中读取导航
我写了一个简单的帮助器,它存储有关当前页面的信息,为了找到这个页面,我使用了函数:
protected function findDeepestActivePage()
{
$naviHelper = $this->getView()->navigation();
$renderInvisible = $naviHelper->getRenderInvisible();
$result = $naviHelper->setRenderInvisible(true)->findActive($naviHelper->getContainer());
$naviHelper->setRenderInvisible($renderInvisible);
if (empty($result)) {
return null;
}
return $result['page'];
}
但是在菜单的少数元素中,功能无法找到活动元素。导航部分有问题(来自菜单用户的元素):
<admin route="admin.summary" id="admin" resource="admin.index.index" visible="1">
<label>Panel Administracyjny</label>
<pages>
<main route="admin.summary" id="amain" resource="admin.index.index" visible="1">
<pages>
<summary route="admin.summary" resource="admin.index.index">
<label>Podsumowanie</label>
<module>admin</module>
<controller>index</controller>
<action>index</action>
</summary>
</pages>
</main>
<users route="admin.users.list" resource="admin.user.index" id="users" visible="1">
<label>Użytkownicy</label>
<pages>
<list route="admin.users.list" resource="admin.user.index" visible="0">
<label>Lista użytkowników</label>
<module>admin</module>
<controller>user</controller>
<action>index</action>
</list>
<add route="admin.users.add" resource="admin.user.add" visible="0">
<label>Dodaj użytkownika</label>
<module>admin</module>
<controller>user</controller>
<action>add</action>
</add>
<details route="admin.users.details" resource="admin.user.details" visible="0">
<label>Szczególy użytkownia</label>
<module>admin</module>
<controller>user</controller>
<action>details</action>
</details>
<edit route="admin.users.edit" resource="admin.user.edit" visible="0">
<label>Edycja użytkownika</label>
<module>admin</module>
<controller>user</controller>
<action>edit</action>
</edit>
</pages>
</users>
</pages>
</admin>
我有模块面板导航的其他部分,其中有类似的部分,工作正常。我试着解决这个问题,但我发现的一切都没有用。