Помощь Simpla CMS Помогите сделать разворачивающиеся меню категории

Ребята, помогите! Ну далекий я в коде :(
Что необходимо поменять, что бы было как на этом сайте
Скрытое содержимое доступно для зарегистрированных пользователей!

в коде:
Код:
<!-- Меню каталога -->
<div id="catalog_menu">
 
{* Рекурсивная функция вывода дерева категорий *}
{function name=categories_tree}
{if $categories}
<ul>
{foreach $categories as $c}
{* Показываем только видимые категории *}
{if $c->visible}
<li>
{if $c->image}<img src="{$config->categories_images_dir}{$c->image}" alt="{$c->name}">{/if}
<a {if $category->id == $c->id}class="selected"{/if} href="catalog/{$c->url}" data-category="{$c->id}">{$c->name}</a>
{categories_tree categories=$c->subcategories}
</li>
{/if}
{/foreach}
</ul>
{/if}
{/function}
{categories_tree categories=$categories}
</div>
<!-- Меню каталога (The End)-->
 
Код:
<!-- Меню каталога -->
<div id="catalog_menu">
{* Рекурсивная функция вывода дерева категорий *}
{function name=categories_tree}
{if $categories}
<ul>
{foreach $categories as $c}
{* Показываем только видимые категории *}
{if $c->visible}
<li>
{if $c->image}<img src="{$config->categories_images_dir}{$c->image}" alt="{$c->name}">{/if}
<a {if $category->id == $c->id}class="selected"{/if} href="catalog/{$c->url}" data-category="{$c->id}">{$c->name}</a>
{categories_tree categories=$c->subcategories}
</li>
{/if}
{/foreach}
</ul>
{/if}
{/function}
{if $category->id == $c->id}
{if in_array($category->id, $c->children)}
{categories_tree categories=$c->subcategories}
{/if}
{/if}
</div>
<!-- Меню каталога (The End)-->
Осталось только правильно настроить css
 
Код:
<!-- Меню каталога -->
<div id="catalog_menu">
{* Рекурсивная функция вывода дерева категорий *}
{function name=categories_tree}
{if $categories}
<ul>
{foreach $categories as $c}
{* Показываем только видимые категории *}
{if $c->visible}
<li>
{if $c->image}<img src="{$config->categories_images_dir}{$c->image}" alt="{$c->name}">{/if}
<a {if $category->id == $c->id}class="selected"{/if} href="catalog/{$c->url}" data-category="{$c->id}">{$c->name}</a>
{categories_tree categories=$c->subcategories}
</li>
{/if}
{/foreach}
</ul>
{/if}
{/function}
{if $category->id == $c->id}
{if in_array($category->id, $c->children)}
{categories_tree categories=$c->subcategories}
{/if}
{/if}
</div>
<!-- Меню каталога (The End)-->
Осталось только правильно настроить css


Пробовал такой код пишет ошибку
 
аменяем строчку 176 в index.tpl
{categories_tree categories=$c->subcategories}
на следующий блок

{if in_array($category->id, $c->children)}{categories_tree categories=$c->subcategories}{/if}
 
В index.tpl находите блок меню каталога, заменяете его этим кодом:

Код:
<!-- Меню каталога -->
                       
                         <div id="cssmenu">
                        
                         {* Рекурсивная функция вывода дерева категорий *}
                         {function name=categories_tree}
                         {if $categories}
                         <ul>
                         {foreach $categories as $c}
                         {* Показываем только видимые категории *}
                         {if $c->visible}
                         <li class='has-sub'>   
                         {if $c->image}<img src="{$config->categories_images_dir}{$c->image}" alt="{$c->name}">{/if}
                         <span><a {if $category->id == $c->id}class="selected"{/if} href="catalog/{$c->url}" data-category="{$c->id}">{$c->name}</a></span>
                         {categories_tree categories=$c->subcategories}
                         </li>   
                         {/if}
                         {/foreach}
                         </ul>
                         {/if}
                         {/function}
                         {categories_tree categories=$categories}
                         </div>

            <!-- Меню каталога (The End)-->

Дальше идём в стили и добавляем следующее:

Код:
/* Сброс стилей */
#cssmenu > ul {
  list-style: none;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  line-height: 1;
}
/* Контейнер меню */
#cssmenu > ul {
  display: block;
  position: relative;
  width: 200px;
  -moz-box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Для Firefox */
  -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Для Safari и Chrome */
  box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Параметры тени */
}
/* Элементы списка содержащие ссылки */
#cssmenu > ul li {
  display: block;
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
}
/* Основные стили ссылок */
#cssmenu > ul li a {

  /* Позиционирование */
  display: block;
  position: relative;
  margin: 0;
  border-top: 1px dotted #fff;
  border-bottom: 1px dotted #ffffff;
  padding: 11px 20px;

  /* Типографика */
  font-family: Helvetica, Arial, sans-serif;
  color: #292929;
  text-decoration: none;
  text-transform: uppercase;
  text-shadow: 0 1px 0 #fff;
  font-size: 13px;
  font-weight: 300;

  /* Фон и эффекты */
  background: #ffffff;
}
/* Скругление углов первой ссылки меню и субменю */
#cssmenu > ul li:first-child > a {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-top: 0;
}
/* Скругление углов последней ссылки меню и субменю */
#cssmenu > ul li:last-child > a {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: 0;
}
/* Стили ссылок при наведении */
#cssmenu > ul li a:hover,
#cssmenu > ul li:hover > a {
  color: #ffffff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
  background: #3b7cff;
  background: -webkit-linear-gradient(#3b7cff, #085aff);
  background: -moz-linear-gradient(#3b7cff, #085aff);
  background: linear-gradient(#3b7cff, #085aff);
  border-color: transparent;
}
/* Индикатор наличия субменю */
#cssmenu > ul .has-sub > a::after {
  content: '';
  position: absolute;
  top: 16px;
  right: 10px;
  width: 0px;
  height: 0px;
  /* Создаём стрелки используя свойство border */

  border: 4px solid transparent;
  border-left: 4px solid #292929;
}
/* Такая же стрелка, только темнее для создания эффекта тени */
#cssmenu > ul .has-sub > a::before {
  content: '';
  position: absolute;
  top: 17px;
  right: 10px;
  width: 0px;
  height: 0px;
  /* Создаём стрелку используя свойство border */

  border: 4px solid transparent;
  border-left: 4px solid #fff;
}
/* Меняем цвет стрелки при наведении курсора */
#cssmenu > ul li > a:hover::after,
#cssmenu > ul li:hover > a::after {
  border-left: 4px solid #fff;
}
#cssmenu > ul li > a:hover::before,
#cssmenu > ul li:hover > a::before {
  border-left: 4px solid rgba(0, 0, 0, 0.25);
}
/* Субменю */
#cssmenu > ul ul {
  position: absolute;
  left: 100%;
  top: -9999px;
  padding-left: 5px;
  opacity: 0;
  width: 200px;
  -moz-box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Для Firefox */
  -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Для Safari и Chrome */
  box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Параметры тени */
  /* Эффект затухания */

  -webkit-transition: opacity 0.3s ease-in;
  -moz-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}
#cssmenu > ul ul li a {
  font-size: 12px;
}
/* Показываем субменю при наведении курсора на родительскую ссылку */
#cssmenu > ul li:hover > ul {
  top: 0px;
  opacity: 1;
  z-index: 1000;
}
 
стили под свой шаблон редактируйте
 
Назад
Сверху