在 magento page/html/topmenu.html 文件中生成菜单项(即在后端创建的类别)我使用 twitter bootstrap css 框架设计这些菜单。它产生的菜单项
<ul id="nav">
<?php echo $_menu ?>
</ul>
我在哪里可以编辑<li>
由<?php echo $_menu ?>
在 magento page/html/topmenu.html 文件中生成菜单项(即在后端创建的类别)我使用 twitter bootstrap css 框架设计这些菜单。它产生的菜单项
<ul id="nav">
<?php echo $_menu ?>
</ul>
我在哪里可以编辑<li>
由<?php echo $_menu ?>
顶部菜单是在块类内部生成 HTML 的少数区域之一。
确切的文件是app/code/core/Mage/Catalog/Block/Navigation.php
.
在此文件中查找为_renderCategoryMenuItemHtml
菜单生成大部分 HTML 的方法。
要为所有菜单项添加新类,您可以覆盖此块并修改方法。
复制app/code/core/Mage/Catalog/Block/Navigation.php
到app/code/local/Mage/Catalog/Block/Navigation.php
查找以下代码(_renderCategoryMenuItemHtml
函数内部)
如果($hasActiveChildren){ $classes[] = '父母'; }
在此之后,添加以下内容:
$classes[] = 'mynewclass';
保存文件,然后刷新所有 Magento 缓存。
我对 Magenta 开发很陌生,在阅读了这个 q&a 之后,我花了一段时间才找到负责顶部菜单形状的正确文件的位置,因为至少在当前版本(1.7.0.2)中它不是不app/code/core/Mage/Catalog/Block/Navigation.php
。相反,它是app/code/core/Mage/Page/Block/Html/TopMenu.php
。在文件内部和内部Mage_Page_Block_Html_Topmenu
有一种_getHTML()
方法,您可以根据需要进行更改。