如何向
有人可以帮帮我吗,我完全被困住了!我不知道如何将类名添加到 Zend 导航 XML 中的
标记这是我的 XML
<configdata>
<nav>
<home>
<label>Home </label>
<uri>/</uri>
</home>
<request>
<label>Quotes </label>
<uri>/quote</uri>
</request>
<work>
<label>How It Works</label>
<uri>/how-it-works</uri>
</work>
<information>
<label>Informations </label>
<uri>/informations</uri>
</information>
<directory>
<class> last </class>
<label>Directory </label>
<uri>/directory</uri>
</directory>
</nav>
</configdata>
当我添加
这就是我得到的:
<li>
<a class="last" href="/directory">Directory </a>
</li>
目前我得到 但我需要
谢谢提前这么多! 干杯
Can someone please help me out, I'm totally stuck! I don't know how to add a class name to <li>
tag in Zend navigation XML
This is my XML
<configdata>
<nav>
<home>
<label>Home </label>
<uri>/</uri>
</home>
<request>
<label>Quotes </label>
<uri>/quote</uri>
</request>
<work>
<label>How It Works</label>
<uri>/how-it-works</uri>
</work>
<information>
<label>Informations </label>
<uri>/informations</uri>
</information>
<directory>
<class> last </class>
<label>Directory </label>
<uri>/directory</uri>
</directory>
</nav>
</configdata>
When I add <class>last</class>
this is what i get:
<li>
<a class="last" href="/directory">Directory </a>
</li>
Currently I'm getting <a class="last">
but I need <li class="last">
Thanks so much in advance!
Cheers
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为将 css 类放入 li 元素的最佳方法是编写自己的导航菜单助手,例如扩展原始
Zend_View_Helper_Navigation_Menu
类的My_View_Helper_NavigationMenu
。因此,我准备了一个重载_renderMenu()
方法的帮助器示例。该方法的代码看起来很长,但这是因为原始代码很长。重载的_renderMenu()
中只有很少的新/修改行:文件:APPLICATION_PATH/views/helpers/NavigationMenu.php
在您的 layout.phtml 中> 您需要指示导航视图助手使用这个新类。您可以按如下方式执行此操作:
最后,在 navigation.xml 中,您可以使用 liclass 标记为 li 元素定义一个类(您可以为此标记使用您想要的任何名称) ):
希望这对您有帮助。理想情况下,我应该将新类命名为
My_View_Helper_Navigation_Menu
(位于 APPLICATION_PATH/views/helpers/Navigation/Menu.php)。但是,我无法让 Zend 插件加载器加载它,所以我使用了My_View_Helper_NavigationMenu
。I think that the best way to put css classes into li elements would be to write your own navigation menu helper, called for example
My_View_Helper_NavigationMenu
that extends originalZend_View_Helper_Navigation_Menu
class. For this reason I prepared an example of such a helper that overloads_renderMenu()
method. The code of the method seems long, but this is because original code is long. There are only few new/modified lines in overloaded_renderMenu()
:File: APPLICATION_PATH/views/helpers/NavigationMenu.php
In your layout.phtml you need to indicate to the navigation view helper to use this new class. You can do this as follows:
Finally in your navigation.xml you could define a class for a li element using liclass tag (you can use whatever name you want for this tag):
Hopefully this will be helpful to you. Ideally, I should have named the new class
My_View_Helper_Navigation_Menu
(located in APPLICATION_PATH/views/helpers/Navigation/Menu.php). However, I could not make Zend plugin loaders to load it and I went withMy_View_Helper_NavigationMenu
.