3

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

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

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

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

Magento 社区版 1.7.0.0

在此处输入图像描述

编辑:我发现将system>config>design>themes>layout设置为原始(下载的)主题而不是我自己的主题会使问题消失,但是我需要保留布局模型,所以我仍然需要隔离问题

4

3 回答 3

6

从 1.6 升级到 1.7.0.2 后,这个问题在我的网站上出现了。

1.6 使用 top.phtml 来渲染菜单。我已经自定义了 top.phtml 并通过 mytheme/layout/catalog.xml 在我的自定义主题中包含了更改

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

1.7.0.2 现在似乎使用模块 topmenu.phtml 来呈现菜单。

因此,我通过删除catalog.xml 中的调用来删除我的自定义,并将我的自定义添加回topmenu.phtml。

不再有双重菜单!

于 2012-09-10T03:20:04.130 回答
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 文件中,此代码似乎已被删除。

希望这可以帮助!?

于 2012-06-08T17:15:39.780 回答
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 字符串,看看它们是否在其他任何地方复制。

于 2012-05-28T16:21:16.107 回答