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



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

我想只在菜单的第一个子菜单中添加一个SPAN元素,因为它具有以下结构:

<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方法,如下所述:http://framework.zend.com/manual/2.2/en/modules/zend.navigation.view.helper.menu.html#rendering-a-customizedmenu-using-a-partial-view-script

相关内容

  • 没有找到相关文章

最新更新