Magento: расположение функции renderCategoriesMenuHtml находится в top.phtml

Верхний файл шаблона навигации по адресу /catalogue/navigation/top.phtml содержит только эту короткую функцию:

<?php $_menu = $this->renderCategoriesMenuHtml(0,'level-top') ?>
<?php if($_menu): ?>
<div class="nav-container">
    <ul id="nav">
        <?php echo $_menu ?>   
        </ul>
</div>
<?php endif ?>

Я пытаюсь найти функцию renderCategoriesMenuHtml, чтобы я мог войти и редактировать структуру результата $_menu, который вызывается в top.phtml.

Цель в том, что я хочу немного отредактировать структуру меню. В настоящее время он выходит в HTML-формате ul> li> a> ul> li> a>, и я хочу немного его отредактировать.

2 ответа

Решение

Команда

$ grep -i -r 'function renderCategoriesMenuHtml' *

возвращается

app/code/core/Mage/Catalog/Block/Navigation.php

который содержит

public function renderCategoriesMenuHtml($level = 0, $outermostItemClass = '', $childrenWrapClass = '')
...

В качестве альтернативы, для тех, кто не очень знаком с grepэтот файл также имеет комментарий PHPDoc:

<?php
/**
 * Top menu for store
 *
 * @see Mage_Catalog_Block_Navigation
 */
?>

Как вы можете видеть, он говорит, какой класс $this ссылка в этом файле, в котором вы найдете метод, который вы ищете.

НТН

Другие вопросы по тегам