Zend framework Zend导航-在超链接中添加HTML元素

Zend framework Zend导航-在超链接中添加HTML元素,zend-framework,menu,navigation,tags,render,Zend Framework,Menu,Navigation,Tags,Render,在Zend导航菜单的超链接中添加一些HTML元素的最佳方式是什么 我只想在菜单的第一个子菜单中添加一个跨度元素,以便具有以下结构: <ul> <li><a href=""><span></span>home</a></li> <ul> <li><a href="...">users</a></li> <

在Zend导航菜单的超链接中添加一些HTML元素的最佳方式是什么

我只想在菜单的第一个子菜单中添加一个跨度元素,以便具有以下结构:

<ul>
    <li><a href=""><span></span>home</a></li>
    <ul>
        <li><a href="...">users</a></li>
        <li><a href="...">staff</a></li>
    </ul>
    <li><a href="..."><span></span>support</a></li>
....
  • ....
您可以创建自己的导航模板,如下所示:

<?php $navigation = $this->navigation('Navigation')->getContainer();?>
<ul>
    <?php foreach ($navigation as $page):?>
        <li><a href="<?php echo $page->getHref(); ?>"><span></span><?php echo $page->label;?></a></li>
        <ul>
            <?php $subPages = $page->getPages();?>
            <?php foreach ($subPages as $subPage):?>
                <li><a href="<?php echo $subPage->getHref(); ?>"><?php echo $subPage->label;?></a></li>
                <li><a href="<?php echo $subPage->getHref(); ?>"><?php echo $subPage->label;?></a></li>
            <?php endforeach;?>
        </ul>
    <?php endforeach;?>
</ul>

只需将其保存在视图文件中,然后将其包含在布局中,代码如下:

<?php echo $this->partial('layout/nav.phtml'); ?>

另一种可能的解决方案是使用导航视图辅助对象的renderPartial或setPartial方法,如下所述: