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
ссылка в этом файле, в котором вы найдете метод, который вы ищете.
НТН