添加标题上带有类别的菜单


Adding menu with categories on header

我尝试在标题中添加商店的类别,为此我执行以下步骤:

在page.xml中添加这个block categories:

<block type="page/html_header" name="header" as="header">
      <block type="core/template" name="top.categories" as="topCategories" template="catalog/navigation/categories.phtml" />
      ...
</block>

创建类别。html,目录/导航/,代码如下:

<?php $_menu = $this->renderCategoriesMenuHtml(1,'level-top') ?>
<?php if($_menu): ?>
<nav class="left-nav">
    <ul class="nav-list">
        <?php echo $_menu ?>
    </ul>
</nav>
<?php endif ?>

并在header中调用该块,代码为:

<?php echo $this->getChildHtml('topCategories') ?>

但是,当我调用这个时,返回一个错误:

: 5:{我:0;年代:111:"无效的方法Mage_Core_Block_Template:: renderCategoriesMenuHtml(阵列([0] => 1[1] => level-top))";i:1;s:3818:"#0[内部函数]:Varien_Object->__call(' rendercategory…",数组)

我使用Magento 1.6.2.

我做错了什么?

你用categories.phtml调用的块应该实现renderCategoriesMenuHtml方法,它应该返回菜单项。你正在使用core/template块,它没有这样的方法(也不应该)。你必须使用正确的块类型,实现获取类别html。

尝试用catalog/navigation代替core/template