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

时间:2013-04-17 11:44:59

标签: php magento e-commerce magento-1.6

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

在page.xml上,添加以下块类别:

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

使用以下代码在目录/ navigation /上创建categories.phtml:

<?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 ?>

在标题中调用此块,代码为:

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

但是,当我这样称呼时,请返回错误:

  

a:5:{i:0; s:111:“方法无效   Mage_Core_Block_Template :: renderCategoriesMenuHtml(Array(       [0] =&gt; 1       [1] =&gt; level-top))“; i:1; s:3818:”#0 [内部函数]:Varien_Object-&gt; __ call('renderCategorie ...',Array)

我正在使用Magento 1.6.2。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

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

尝试使用catalog/navigation代替core/template