Я делаю меню с 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>
[...]
Какое решение?
С уважением,