我使用zf2中的导航视图助手渲染菜单。我使用配置来指定我的菜单项,我不想使用部分。当我将“class”添加到配置中的导航数组时,它将类添加到< a>嵌入在<内的元素li>元件。有谁知道如何指定特定<的类? li> elemenmt?
我的配置看起来像这样:
"navigation" => array(
"default" => array(
"main" => array(
'label' => 'Site',
'route' => 'site',
'class' => 'my-html-class-name',
'pages' => array(
'label' => 'Articles',
'route' => 'articles',
'pages' => array(
array(
'label'=> 'All Articles',
'route'=> 'all-articles'),
),
),
),
),
),
呈现:
<ul>
<li>
<a href="/site-map" class="my-html-class-name">Site</a>
<ul>
<li>
<a href="/articles">Articles</a>
</li>
</ul>
</li>
</ul>
我想将类名“my-html-class-name”添加到父级&lt; li>元素而不是&lt; a&gt;渲染菜单时标记。我怎样才能做到这一点?我在zf2网站上发表了评论,但我没有收到回复,ZF2 custom attributes in navigation不是我想要的解决方案。
我是否必须创建自定义视图助手才能实现此目的?
答案 0 :(得分:3)
只需在导航视图助手中将addClassToListItem
的标记切换为true
:
<?php
echo $this->navigation('navigation')
->setAddClassToListItem(true)
->render();
?>
然后,为已添加到<a>
元素的页面添加的类也将显示在父<li>
元素中。