WebsiteBaker Community Forum

WebsiteBaker Support (2.8.x) => Templates, Menus & Design => Topic started by: sky writer on June 21, 2011, 03:52:58 AM

Title: show_menu2 show child from parent only
Post by: sky writer on June 21, 2011, 03:52:58 AM
I have a working menu structure

Code: [Select]
<?php show_menu2(1SM2_ROOTSM2_STARTSM2_TRIM|SM2_PRETTY,
&#39;<li><a href="[url]" target="[target]">[menu_title]</a>&#39;, &#39;</li>&#39;, &#39;<ul class="personmenu">&#39;, &#39;</ul>&#39;, 
falsefalse
); ?>

That looks like this:
Home
Person

The "Person" menu item has a child named "Scores".  Currently, when I click "Person", the "Scores" link appears below it's parent - "Person", which is fine.  But I also want the child "Scores" to appear in another location, when "Person" is clicked.  And here is the part I am really having trouble with...
When someone clicks this separate child "Scores" menu link, to open the "Scores" page, I want that separate "Scores" menu link to go away.  I can't seem to find a combination that will accomplish that.

I have tried everything I can find on: http://www.websitebakers.de/sm2/
Title: Re: show_menu2 show child from parent only
Post by: Ruud on June 21, 2011, 10:24:40 AM
If I understand the question correctly...  8-)

Code: [Select]
show_menu2(0, SM2_CURR+1, SM2_CURR+1, etc....);This should only show children of the current page.
Title: Re: show_menu2 show child from parent only
Post by: sky writer on June 21, 2011, 07:52:15 PM
I left one important detail out.  The menu structure is actually three deep.

That is, there is:
Home
Person
     - Person 1
              - Person 1 Scores
     - Person 2
              - Person 2 Scores

So, I only want to see the additional "Person 1 Scores" child link when I am on the parent of that link (Person 1).

Code: [Select]
show_menu2(0, SM2_CURR+1, SM2_CURR+1, etc....);shows "Person 1" and "Person 2" links in the alternate position when I am on the "Person" page.  I don't want that.

Hope this is clearer now.
Title: Re: show_menu2 show child from parent only
Post by: DarkViper on June 21, 2011, 09:48:31 PM
try this please....

Code: [Select]
<?php

show_menu2
(0SM2_ROOT+2SM2_START,  SM2_TRIM|SM2_CURRTREE|SM2_PRETTY, &#39;<li><a href="[urL]"...&#39;);

?>
Title: Re: show_menu2 show child from parent only
Post by: sky writer on June 21, 2011, 10:02:47 PM
Tried that one before.  I tried again, and it doesn't give the result I am after.

That shows "Scores" on the "Person 1" page, and the "Person 1 Scores" page itself.
It also shows all Person1,2,3,4,5 child "Scores" links on the "Person" page.
Title: Re: show_menu2 show child from parent only
Post by: Ruud on June 22, 2011, 10:25:45 AM
There are conditional parameters possible in SM2.

Code: (NOT tested) [Select]
<?php
show_menu2
(0SM2_CURR+1SM2_CURR+1SM2_CURRTREE"[if(level > 1){[li][a][menu_title]</a>}]","</li>");
?>

..that should generate items for menu level 2 and up.
Title: Re: show_menu2 show child from parent only
Post by: sky writer on June 22, 2011, 05:33:17 PM
Thank you both for you time and talent.
Ruud, that worked perfectly.
I did read the the show_menu2 documentation, but wasn't skilled enough to work out the formatting of the string.
Cheers!
Title: Re: show_menu2 show child from parent only
Post by: Ruud on June 22, 2011, 05:44:13 PM
3 cheers for show_menu2(). The best WB addition ever.
Title: Re: show_menu2 show child from parent only
Post by: Stefek on June 22, 2011, 06:59:21 PM
show_menu2(). The best WB addition ever.
Yepp, agree.