Благодарю за ответ, дело в том, уже на данный момент протестировал и понял, что урок оказался очень старым и на сегодняшний день он не подходит. Пришлось начать изучать всё глубже, чтобы понять как на свежей версии поставить меню аккордеон. Проблема в том, что нет подходящих исходников. Уже третью неделю ломаю голову... Многие просто устанавливают шаблоны, но это не мой путь, они сильно замедляют загрузку сайта, так как перегружены ненужными функциями и скриптами. К сожалению пока не разобрался в чтении языков html, php, jquery.
Сейчас планирую сделать так:
Создать файл my-name.phtml
В нём код, вытащенный из файла одной темы (в конце его приложу).
В файле catalog.hml я пропишу этот файл блоком.
А дальше одни вопросы, созданный мной файл и будет отвечать за сценарий меню и как оно себя ведёт? Я так понимаю jquery содержит в себе только базу команд и в ней ничего не надо писать. Ещё пока не дошёл до того как будет подключаться оформление CSS...
Код:
<?php
$storeId = Mage::app()->getStore()->getId();
//Get category model
$_category = Mage::getModel('catalog/category')->setStoreId($storeId);
$_cat = $_category->load(Mage::app()->getStore()->getRootCategoryId());
?>
<?php
function getChildrenCategoriesHtmlContent($_category){
$children = explode( ",", $_category->getChildren() );
$content = '';
$content .= '<li class="';
if(!$children[0])
$content .= 'has-no-children';
else
$content .= 'has-children';
$content .= '">';
$content .= '<a href="'.$_category->getUrl().'" ';
$content .= '>'.$_category->getName().'</a>';
if($children[0]){
$content .= '<a href="javascript:void(0)" class="plus"><i class="icon-plus-squared"></i></a>';
$content .= '<ul>';
foreach($children as $child){
$_subcat = Mage::getModel( 'catalog/category' )->load( $child );
$content .= getChildrenCategoriesHtmlContent($_subcat);
}
$content .= '</ul>';
}
$content .= '</li>';
return $content;
}
?>
<div class="block block-category-nav">
<div class="block-title">
<strong><span><?php echo $this->__("Category") ?></span></strong>
</div>
<div class="block-content">
<ul class="category-list">
<?php
$children = explode( ",", $_cat->getChildren() );
foreach($children as $child){
$_category = Mage::getModel( 'catalog/category' )->load( $child );
echo getChildrenCategoriesHtmlContent($_category);
}
?>
</ul>
</div>
<script type="text/javascript">
jQuery(function($){
$(".block.block-category-nav .block-title strong").click(function(){
if($(this).hasClass("closed")){
$(".block.block-category-nav .block-content").slideDown();
$(this).removeClass("closed");
} else {
$(".block.block-category-nav .block-content").slideUp();
$(this).addClass("closed");
}
});
$(".block.block-category-nav .category-list a.plus").click(function(){
if($(this).parent().hasClass("opened")){
$(this).parent().children("ul").slideUp();
$(this).parent().removeClass("opened");
$(this).children("i.icon-minus-squared").removeClass("icon-minus-squared").addClass("icon-plus-squared");
} else {
$(this).parent().children("ul").slideDown();
$(this).parent().addClass("opened");
$(this).children("i.icon-plus-squared").removeClass("icon-plus-squared").addClass("icon-minus-squared");
}
});
});
</script>
</div>
Честно говоря глядя на этот код вообще не пойму, что тут за что отвечает...:-(