2013-04-17 3 views
0

Я пытаюсь добавить категории моего магазина в заголовке, для этого я сделать следующие шаги:Добавление меню с категориями по заголовку

На 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> 

Создание 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') ?> 

Но, Whe я называю это, возвращает ошибку:

a:5:{i:0;s:111:"Invalid method Mage_Core_Block_Template::renderCategoriesMenuHtml(Array ( [0] => 1 [1] => level-top))";i:1;s:3818:"#0 [internal function]: Varien_Object->__call('renderCategorie...', Array)

Я использую Magento 1.6.2.

Что я делаю неправильно?

ответ

2

Блок, который вы вызываете с categories.phtml, должен реализовать метод renderCategoriesMenuHtml, который должен возвращать элементы меню. Вы используете блок core/template, который не имеет такого метода (и не должен). Вы должны использовать правильный тип блока, который реализует получение категорий html.

Попробуйте использовать catalog/navigation вместо core/template.

+0

Какая ошибка показывается? Если тот же самый, попробуйте сбросить кеш – nevermourn

Смежные вопросы