Jump to content

Recommended Posts

Приветствую, прошу помощи или поделится меню аккордеон для симпла. Имеющееся меню не могу приспособить, загвоздка в том что на главной странице меню отображается но не раскрываются подменю, а перейдя в какую то категорию работает все как полагается, подменю раскрываются. на всякий случай скину код меню, если дело гиблое поделитесь пожалуйста готовым решением, спасибо.

 

            <div id="cssmenu">
            {function name=categories_tree}
            {if $categories}
                <ul>
                {foreach $categories as $c}
                {if $c->visible}
                <li{if in_array($category->id, $c->children)} class="active has-sub"{/if}>
                <a href="catalog/{$c->url}" data-category="{$c->id}">{$c->name}</a>
                {if in_array($category->id, $c->children)}{categories_tree categories=$c->subcategories}{/if}
                </li>
                {/if}
                {/foreach}
                </ul>
            {/if}
            {/function}
            {categories_tree categories=$categories}
            </div>
Link to post
Share on other sites

для блоков кода используйте тег <code>!!!
к делу

 

{if in_array($category->id, $c->children)} - это условие нужно убрать (в 2-х местах)

вот так

<div id="cssmenu">
            {function name=categories_tree}
            {if $categories}
                <ul>
                {foreach $categories as $c}
                {if $c->visible}
                <li class="active has-sub">
                <a 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>

 

 

тогда выведутся все категории, но для того, чтоб определить категорию у которой есть подкатегории нужно добавить условие

{if $c->subcategories}

вот так

<div id="cssmenu">
            {function name=categories_tree}
            {if $categories}
                <ul>
                {foreach $categories as $c}
                {if $c->visible}
                <li class="active{if $c->subcategories} has-sub{/if}">
                <a href="catalog/{$c->url}" data-category="{$c->id}">{$c->name}</a>
                {if $c->subcategories}{categories_tree categories=$c->subcategories}{/if}
                </li>
                {/if}
                {/foreach}
                </ul>
            {/if}
            {/function}
            {categories_tree categories=$categories}
            </div> 
Link to post
Share on other sites

 

для блоков кода используйте тег <code>!!!

к делу

 

{if in_array($category->id, $c->children)} - это условие нужно убрать (в 2-х местах)

вот так

<div id="cssmenu">
            {function name=categories_tree}
            {if $categories}
                <ul>
                {foreach $categories as $c}
                {if $c->visible}
                <li class="active has-sub">
                <a 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>

 

 

тогда выведутся все категории, но для того, чтоб определить категорию у которой есть подкатегории нужно добавить условие

{if $c->subcategories}

вот так

<div id="cssmenu">
            {function name=categories_tree}
            {if $categories}
                <ul>
                {foreach $categories as $c}
                {if $c->visible}
                <li class="active{if $c->subcategories} has-sub{/if}">
                <a href="catalog/{$c->url}" data-category="{$c->id}">{$c->name}</a>
                {if $c->subcategories}{categories_tree categories=$c->subcategories}{/if}
                </li>
                {/if}
                {/foreach}
                </ul>
            {/if}
            {/function}
            {categories_tree categories=$categories}
            </div> 

 

 
Огромнейшее спасибо за помощь все отлично работает !
Link to post
Share on other sites

http://forum.simplacms.ru/topic/5511-%D0%B0%D0%BA%D0%BA%D0%BE%D1%80%D0%B4%D0%B8%D0%BE%D0%BD-%D0%BC%D0%B5%D0%BD%D1%8E/page-2

 

изредка пользуйтесь поиском, часть вопросов отпадает

 

Спасибо, поиском воспользовался, к сожалению что то эта статья не отобразилась, сейчас же почитаю.

Link to post
Share on other sites

Я извиняюсь за беспокойство, при таком раскладе 

 

<li class="active{if $c->subcategories} has-sub{/if}">

не работает css красоты.

 

при таком:

 

<li class="{if $c->subcategories} has-sub{/if}">

Все работает идеально.

 

Вопрос, чем чревато такое действие ? 

Link to post
Share on other sites
  • 2 months later...

приветствую, есть ли возможность сделать так что бы при клике на категорию или под категорию, отображался весь товар категории, а не просто выпадало подменю  ? 

Link to post
Share on other sites
  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...