【发布时间】:2011-11-17 15:06:13
【问题描述】:
我用 Zend_Navigation 制作了一个菜单。 问题是我检测了几次“活动菜单”,即当前页面的“li”。
这是我的导航.xml
<?xml version="1.0" encoding="UTF-8"?>
<configdata>
<nav>
<home>
<label>Accueil</label>
<controller>index</controller>
</home>
<search>
<label>Riads</label>
<controller>search</controller>
<action>index</action>
<params>
<q>allriads</q>
</params>
</search>
<last>
<label>Dernières Minutes</label>
<uri>#</uri>
</last>
<promotion>
<label>Promotions</label>
<uri>#</uri>
</promotion>
<groupes>
<label>Groupes</label>
<uri>#</uri>
</groupes>
<contact>
<label>Contact</label>
<controller>apropros</controller>
<action>contact</action>
</contact>
</nav>
这是我的引导程序中的代码
/**
* @return Zend_Navigation
*/
protected function _initNavigation()
{
$config = new Zend_Config_Xml(APPLICATION_PATH . '/configs/navigation.xml', 'nav');
$this->_view->navigation(new Zend_Navigation($config));
$activeNav = $this->_view->navigation()->findByController('index');
$activeNav->active = true;
$activeNav->setClass("active");
}
这是生成的 HTML
<ul class="navigation">
<li class="active">
<a class="active" href="/v2/">Accueil</a>
</li>
<li class="active">
<a href="/v2/search/index/q/allriads">Riads</a>
</li>
<li>
<a href="#">Dernières Minutes</a>
</li>
<li>
<a href="#">Promotions</a>
</li>
<li>
<a href="#">Groupes</a>
</li>
<li>
<a href="/v2/apropros/contact">Contact</a>
</li>
</ul>
好的代码必须是:
<ul class="navigation">
<li>
<a href="/v2/">Accueil</a>
</li>
<li>
<a href="/v2/search/index/q/allriads">Riads</a>
</li>
[...]
解决办法是什么?
此致,
【问题讨论】:
标签: php zend-framework zend-navigation