Page 1 of 1

uitklapmenu

Posted: Sat May 07, 2011 12:55 pm
by mm111
Hallo,

Ik ben een nieuwe CMSMS gebruiker, dus weet er nog erg weinig van. Ik probeer een menu te maken waarbij de 'subopties' alleen getoond worden als deze 'onder' de huidige pagina hangen. Ik heb het script wat in de standaard template zat als basis genomen en er uit een en ander 'uitgesloopt' en aangepast maar hij laat nu ook nog de subopties van een niet actieve pagina zien.....kan iemand me verder helpen aub?

Code: Select all

{if $count > 0}
<ul class="menu">
{foreach from=$nodelist item=node}
{if $node->depth > $node->prevdepth}
{repeat string="<ul>" times=$node->depth-$node->prevdepth}
{elseif $node->depth < $node->prevdepth}
{repeat string="</li></ul>" times=$node->prevdepth-$node->depth}
</li>
{elseif $node->index > 0}</li>
{/if}

{if $node->parent == true or $node->current == true}
  <li class="active"><a href="{$node->url}">{$node->menutext}</a>

{elseif $node->children_exist == true and $node->current == true}
  <li><a href="{$node->url}">{$node->menutext}</a>

{elseif $node->current == true}
  <li class="active">{$node->menutext}

{else}
  <li><a href="{$node->url}">{$node->menutext}</a>

{/if}

{/foreach}
{repeat string="</li></ul>" times=$node->depth-1}</li>
</ul>
{/if}


Re: uitklapmenu

Posted: Sun May 08, 2011 8:55 pm
by Jos
Ik weet niet of we hetzelfde bedoelen, maar als ik het zo lees dan hoef je daarvoor geen nieuwe menu-template te maken.

Je hoofdmenu kun je aanroepen met

Code: Select all

{menu number_of_levels='1'}
En je submenu met

Code: Select all

{menu start_level='2'}
Automatisch worden in het submenu alleen de items getoond die onder de actieve pagina hangen

Zie voor een uitleg van de parameters de module-help onder MenuManager

Re: uitklapmenu

Posted: Mon May 09, 2011 5:44 pm
by mm111
Dan denk ik dat je me niet snapt....of ik jou niet. Het 'submenu' moet deel uitmaken van het 'hoofdmenu'. Het zijn dus niet 2 losse menu's.

Re: uitklapmenu

Posted: Mon May 16, 2011 10:23 am
by Jos
Dan had ik het inderdaad verkeerd begrepen.

Ik denk dat je dit het makkelijkst in de css kunt oplossen.

Uitgaande van de NCleanBleu template kun je bijvoorbeeld deze regel in de "Layout: NCleanBlue" stylesheet aanpassen:

Van:

Code: Select all

#primary-nav li:hover ul,
#primary-nav ul li:hover ul,
#primary-nav ul ul li:hover ul,
#primary-nav ul ul ul li:hover ul,
#primary-nav li.menuparenth ul,
#primary-nav ul li.menuparenth ul,
#primary-nav ul ul li.menuparenth ul,
#primary-nav ul ul ul li.menuparenth ul {
	display: block;
}
Naar:

Code: Select all

#primary-nav li.menuactive:hover ul,
#primary-nav ul li:hover ul,
#primary-nav ul ul li:hover ul,
#primary-nav ul ul ul li:hover ul,
#primary-nav li.menuparenth ul,
#primary-nav ul li.menuparenth ul,
#primary-nav ul ul li.menuparenth ul,
#primary-nav ul ul ul li.menuparenth ul {
	display: block;
}

Re: uitklapmenu

Posted: Mon May 16, 2011 12:42 pm
by mm111
Ik heb het inmiddels idd mbv css opgelost.
Bedankt iig voor het meedenken.

Re: uitklapmenu

Posted: Tue May 17, 2011 12:50 pm
by Rolf
mm111 wrote:Ik heb het inmiddels idd mbv css opgelost
Zou je in de titel van de eerste post nog even [opgelost] willen zetten?
Dan is het voor anderen ook duidelijk.

grt. Rolf :)

Re: uitklapmenu

Posted: Wed May 18, 2011 9:09 pm
by Jos
Vergeet bovenstaande, ik kom er net achter dat er een parameter is die precies doet wat je wilt. Een veel betere oplossing, omdat je html dan ook niet groter is dan nodig.

{menu collapse=1}

Ik leer elke dag nog bij :D