Magento两次显示顶级菜单

时间:2012-05-28 16:16:08

标签: magento

Magento在升级后两次显示顶级(类别)菜单,请参见截图。

在我看来top.phtml正在文件<?php echo $this->getChildHtml('topMenu') ?>中的行header.phtml执行两次。

我已尝试切换到每个文件的默认代码(即从基本/默认主题),但我得到相同的结果。我还检查了后端管理员,当我选择一个类别并从Include in Navigation Menu中选择“否”时,该类别从菜单的两次迭代中消失。

任何人都可以提出可能的解决方案或行动方案。

Magento Community Edition 1.7.0.0

enter image description here

编辑:我发现将系统&gt;配置&gt;设计&gt;主题&gt;布局设置为原始(已下载)主题,而不是我自己的主题让问题消失,但是我需要保留布局模块,所以我仍然需要隔离问题

2 个答案:

答案 0 :(得分:3)

我从1.6升级到1.7后遇到了同样的问题,并且能够通过删除以下代码来解决它

<reference name="top.menu">
    <block type="catalog/navigation" name="catalog.topnav" template="catalog/navigation/top.phtml"/>
</reference>

开头的

/design/frontend/mytheme/default/layout/catalog.xml

在原始的1.6文件的开头,提到了这段代码(因此也在我的主题中复制了)但是在原始的1.7文件中,这段代码似乎被删除了。

希望这有帮助!?

答案 1 :(得分:1)

将当前page.xml布局与上一个或基本进行比较,看看您是否可能再次添加顶层菜单。 导航在page.xml

中的此块中定义
<block type="core/text_list" name="top.menu" as="topMenu" translate="label">
    <label>Navigation Bar</label>
    <block type="page/html_topmenu" name="catalog.topnav" template="page/html/topmenu.phtml"/>
</block>

在你的设计文件夹中查看top.menu或catalog.topnav字符串,看看它们是否在其他地方被复制。