06/05/2013, 08:42:45
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.6
#~ Url du site :
#~ Hébergeur / Soft :
#~ Informations Système :
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~
Jusqu'à présent j'agrémentais mes menus avec les images des pages correspondantes en utilisant le gabarit suivant
Code :
[== HTML ==]
{* CSS classes used in this template:
#menuwrapper - The id for the <div> that the menu is wrapped in. Sets the width, background etc. for the menu.
#primary-nav - The id for the ici id="menu_V"<ul>
.menuparent - The class for each <li> that has children.
.menuactive - The class for each <li> that is active or is a parent (on any level) of a child that is active. *}
{if $count > 0}
<div id="menu_V_wrapper">
<ul id="menu_V">
{foreach from=$nodelist item=node}
{if $node->depth > $node->prevdepth}
{repeat string='<ul class="unli">' times=$node->depth-$node->prevdepth}
{elseif $node->depth < $node->prevdepth}
{repeat string='</li><li class="separator once" style="list-style-type: none;" > </li></ul>' times=$node->prevdepth-$node->depth}
</li>
{elseif $node->index > 0}</li>
{/if}
{if $node->parent == true or ($node->current == true and $node->haschildren == true)}
<li class="menuactive menuparent" >
<a class="menuactive menuparent" {elseif $node->current == true}
<li class="menuactive" >
<a class="menuactive" {elseif $node->haschildren == true}
<li class="menuparent" >
<a class="menuparent" {elseif $node->type == 'sectionheader' and $node->haschildren == true}
<li class="sectionheader" <span class="sectionheader" >{$node->menutext}</span> {elseif $node->type == 'separator'}
<li style="list-style-type: none;" > <hr class="menu_separator" />{else}
<li>
<a {/if}
{if $node->type != 'sectionheader' and $node->type != 'separator'}
{if $node->target}target="{$node->target}" {/if}
style="background-image:url({$node->image}); background-repeat:no-repeat; background-position:left top;"
>
<span > {$node->menutext} </span></a>
{elseif $node->type == 'sectionheader'}
><span class="sectionheader">{$node->menutext}</span></a>
{/if}
{/foreach}
{repeat string='</li><li class="separator once" style="list-style-type: none;"> </li></ul>' times=$node->depth-1}
</li>
</ul>
<div class="clearb"></div>
</div>
{/if}
la ligne qui insère l'image ne passe plus avec la version 1.11.6 pour les niveaux de menus dont les pages n'ont pas d'image définie
Code :
[== HTML ==]
href="{$node->url}" style="background-image:url({$node->image}); background-repeat:no-repeat; background-position:left top;"
j'ai solutionné le problème en testant le niveau de menu auquel on se trouve avant d'insérer l'image
Code :
[== HTML ==]
href="{$node->url}"
{if $node->depth < 2}
style=" background-image:url({$node->image}); background-repeat:no-repeat; backgroud-position:left top;"
{/if}
Une solution plus élégante serait de tester si la page a ou non une image mais là ça dépasse mes capacités.
En espérant que cela sera utile
MS-Dos, Gem, geoworks, Windows 1, 2, 3, 3.1, 95, 98, XP, seven, 8, 10
Mac system 1 à 6
Wampserver 3.1.9,
PhP 7.3.5,
CMS version 2.2.11