WebsiteBaker Community Forum

WebsiteBaker Support (2.8.x) => Templates, Menus & Design => Topic started by: helihans on January 20, 2016, 07:45:43 PM

Title: vraag menu
Post by: helihans on January 20, 2016, 07:45:43 PM
hallo, na lang zoeken heb ik een menu gevonden wat ik graag zou willen toepassen.
Dit zou de output moeten zijn:
Code: [Select]

<ul data-menu-level="0">

<li class="current">
<a href="link1.htm" class="current">link1</a>
</li>
<li>
<a href="link2.htm">
<img src="img/default/pixTrans.gif" alt="" />link2</a>
<span class="arrow" data-menu-arrow=""></span>
<ul data-menu-level="1" class="floatMenu">
<li>
<a href="kind1.htm" >kind1</a>
</li>

</ul>
</li>

</ul>


en in WB dit is het "bijna" :
Code: [Select]
<?php 
$open 
'<li class="[if(class=menu-current||class=menu-parent){current}]">[if(class==menu-expand){<a  href="[url]" >[menu_title] <img src="http://mijnsite.nl/template/img/default/pixTrans.gif" alt="" /></a><span class="arrow"></span>}else {<a href="[url]" >[menu_title]</a>}]';
show_menu2(
$aMenu          1,
$aStart         SM2_ROOT+0
$aMaxLevel      SM2_ALL,
$aOptions       SM2_ALL,
$aItemOpen      $open,
$aItemClose     '</li>',
$aMenuOpen      '<ul data-menu-level="[if(level==0){0} else {[level]}]" class="[if(level==0){} else {floatMenu}]">',
$aMenuClose     '</ul>',
$aTopItemOpen   false,
$aTopMenuOpen   false
);?>


de class current wordt nu wel bij de <li> toegevoegd maar moet ook bij href komen...

wie o wie, het voorbeeld is van batavus.nl
Title: Re: vraag menu
Post by: Ruud on January 20, 2016, 11:10:36 PM
Het stukje in de <li> wat zegt:  class="[if(class=menu-current||class=menu-parent){current}]" kan je ook in de <a> opnemen.

Zoiets zal het dan worden (ongetest)
Code: (untested) [Select]
<?php 
$open 
'<li class="[if(class=menu-current||class=menu-parent){current}]">[if(class==menu-expand){<a class="[if(class=menu-current||class=menu-parent){current}]" href="[url]" >[menu_title] <img src="http://mijnsite.nl/template/img/default/pixTrans.gif" alt="" /></a><span class="arrow"></span>}else {<a class="[if(class=menu-current||class=menu-parent){current}]" href="[url]" >[menu_title]</a>}]';

Title: Re: vraag menu
Post by: helihans on January 20, 2016, 11:43:11 PM
Dank Ruud,

Helaas werkt het niet en laat deze toevoeging in het menu zien:
(http://harlingen3d.nl/menu-fout.JPG)

testomgeving:
http://harlingen3d.nl/test3 (http://harlingen3d.nl/test3)
Title: Re: vraag menu
Post by: Ruud on January 21, 2016, 10:56:43 AM
Blijkbaar werken de [if{}] regels niet als je al binnen een [if] zit. Dan gaat de vlieger niet op.

De enige oplossing is dan om de css een klein beetje te verbouwen zodat die ook .menu-current en .menu-parent snapt.
Ik zie op je testsite dat je een gecomprimeerde css gebruikt. Als je die ook ongecomprimeerd hebt is dat niet zo heel lastig aan te passen.

Om die classes in de <a> tag te krijgen gebruik je ipv <a  href="[url]" > (uit jouw eerste poging) alleen maar [ac]
Iets als:

Code: [Select]
<?php

$open 
'<li class="[if(class=menu-current||class=menu-parent){current}]">[if(class==menu-expand){[ac][menu_title] <img src="http://mijnsite.nl/template/img/default/pixTrans.gif" alt="" /></a><span class="arrow"></span>}else {[ac][menu_title]</a>}]';


in de css zoek je dan de .current selectors op en die laat je ook op .menu-current en .menu-parent werken.
Title: Re: vraag menu
Post by: helihans on January 21, 2016, 11:08:38 AM
Wederom dank Ruud,

idd is het if-if het grote struikelblok.
De grote css is even "geleasd"van de de voorbeeld site en werkt prima zonder SM2menu.
Ik zal me richten op menu wat wel werkt en zelf gaan stylen.
Gr Hans
Title: Re: vraag menu
Post by: nibz on January 21, 2016, 08:31:26 PM
Hallo hans,

Niet getest maar komt dit niet in de buurt van het gewenste resultaat:
Code: [Select]
<?php 
$open 
'<li class="[if(class=menu-current||class=menu-parent){current}]"><a href="[url]">[if(class==menu-expand){<img src="img/default/pixTrans.gif" alt="" />}][menu_title]</a>[if(class==menu-expand){<span class="arrow" data-menu-arrow=""></span>}]';

show_menu2(
$aMenu          1,
$aStart         SM2_ROOT+0
$aMaxLevel      SM2_ALL,
$aOptions       SM2_ALL,
$aItemOpen      $open,
$aItemClose     '</li>',
$aMenuOpen      '<ul data-menu-level="[level]" class="[if(level>0){floatMenu}]">',
$aMenuClose     '</ul>',
$aTopItemOpen   false,
$aTopMenuOpen   false
);?>

Title: Re: vraag menu
Post by: helihans on January 21, 2016, 08:42:51 PM
Dank Robin,
 ik ben inmiddels al wat stappen verder en heb met styling het probleem omzeild..
 2 maal if geeft een probleem en als ik jou oplossing zo zie ( ook 2x if) dan vrees ik het ergste.
Morgen zal ik je  ff testen.
Hans