ZF2导航:设置UL id属性


ZF2 Navigation: Set UL id attribute

我正在尝试使用导航来构建我的菜单。然而,我需要设置标签的id

<ul class="sf-menu" id="nav">
    <li class="active">
        <a href="/">Home</a>
    </li>
    <li>
        <a href="/api">Api</a>
    </li>
    <li>
        <a href="/a">Baker and spice</a>
    </li>
</ul>   '

但是,我似乎不能这么做。

我尝试使用foreach 构建html

<?php 
foreach ($this->container as $page){ 
}
?>

它没有做任何事情,因为$this->容器显示为NULL。

请给我建议!

提前感谢

Justin

如果在您的视图中,您可以调用

echo $this->navigation('navigation')->menu();

要正确输出菜单,您必须要做的是使用局部视图脚本创建一个自定义菜单(因此,您使用$this->container,否则不会设置)。要做到这一点,请确保你有这个:

echo $this->navigation('navigation')->menu()
          ->setPartial('my-module/partials/menu')->render();

以及相应的部分脚本:module/MyModule/view/my-module/partials目录中名为menu.phtml的文件(在本例中)。

// module/MyModule/view/my-module/partials/menu.phtml
<ul class="sf-menu" id="nav">
<?php foreach ($this->container as $page): ?>
    <li <?= $page->isActive()? 'class="active"' : '' ?>>
        <?= $this->navigation()->menu()->htmlify($page) ?>
    </li>
<?php endforeach; ?>
</ul>

(这只给你一个单一级别的菜单,但会让你走上正确的道路。)