Forum CMS Made Simple FR
[Résolu] Problème sur un gabarit de menu - Version imprimable

+- Forum CMS Made Simple FR (https://forum.cmsmadesimple.fr)
+-- Forum : Général (https://forum.cmsmadesimple.fr/forum-3.html)
+--- Forum : Modules, Tags (https://forum.cmsmadesimple.fr/forum-14.html)
+--- Sujet : [Résolu] Problème sur un gabarit de menu (/thread-815.html)



[Résolu] Problème sur un gabarit de menu - drmicro - 19/11/2010

Citation :#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~
#~ Version du CMS: 1.6.8
#~ Nom de l'hébergeur : free.fr
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.6.8
#~ Installed Modules:
#~ * CMSMailer: 1.73.14
#~ * FileManager: 1.0.2
#~ * MenuManager: 1.6.5
#~ * ModuleManager: 1.3.3
#~ * News: 2.10.5
#~ * nuSOAP: 1.0.1
#~ * Printing: 1.0.4
#~ * Search: 1.6.5
#~ * ThemeManager: 1.1.1
#~ * TinyMCE: 2.7.2
#~ * SimpleSlider: 0.3
#~ * Showtime: 1.0.5
#~ * jQuery: 1.1.2
#~ * FormBuilder: 0.6.4
#~ Config Information:
#~ * php_memory_limit:
#~ * process_whole_template: false
#~ * max_upload_size: 2000000
#~ * default_upload_permission: 664
#~ * assume_mod_rewrite: false
#~ * page_extension:
#~ * internal_pretty_urls: false
#~ * use_hierarchy: true
#~ Php Information:
#~ * phpversion: 5.1.3RC4-dev
#~ * md5_function: On (Vrai)
#~ * gd_version: 2
#~ * tempnam_function: On (Vrai)
#~ * magic_quotes_runtime: Off (Faux)
#~ * memory_limit: 32M
#~ * max_execution_time: 20
#~ * safe_mode: On (Vrai)
#~ * session_save_path: /mnt/140/sdb/b/3/monsite/sessions (0700)
#~ * session_use_cookies: On (Vrai)
#~ Server Information:
#~ * Server Api: cgi-fcgi
#~ * Server Db Type: MySQL (mysql)
#~ * Server Db Version: 5.0.83
#~ ----------------------------------------------
#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~


Bonsoir j'ai un soucis pour finaliser un gabarit de menu.

J'ai créé un menu en dur avec du jquery qui fonctionne bien.

Je l'ai transposé et là je bloque.

Je récupère bien la mise en forme pour le topnav et le subnav, cependant je n'ai que le premier <li> du subnav qui s'affiche

Voici en dur ce que celà donne :


<script src="http://code.jquery.com/jquery-1.4.3.js" type="text/javascript"></script>
<script type="text/javascript">
var obj = null;
function checkHover() {
if (obj) {
obj.find('ul').fadeOut('fast');
}
}
$(document).ready(function(){
$('.topnav > li').hover(function() {
if (obj) {
obj.find('ul').fadeOut('fast');
obj = null;
}

$(this).find('ul').fadeIn('fast');
}, function() {
obj = $(this);
setTimeout(
"checkHover()",
0);
});

});

</script>
{/literal}
</head>
<body>
<div id="page-wrap">
<ul class="topnav">
<li>
<a href="#">A</a>
</li>
<li>
<a href="#">B</a>
<ul class="subnav">
<li><a href="#">B1</a></li>
<li><a href="#">B2</a></li>
<li><a href="#">B3</a></li>
<li><a href="#">B4</a></li>
<li><a href="#">B5</a></li>
</ul>
</li>
<li><a href="#">C</a>
<ul class="subnav">
<li><a href="#">C1</a></li>
<li><a href="#">C2</a></li>
<li><a href="#">C3</a></li>
</ul>
</li>
<li><a href="#">D</a></li>
<li><a href="#">Z</a>
<ul class="subnav">
<li><a href="#">E1</a></li>
<li><a href="#">E2</a></li>
<li><a href="#">E3</a></li>
</ul>
</li>
</ul>
</div>
{content}
{menu} // ici c'est pour tester le menu .tpl
</body>
</html>

Voici le .tpl

{if $count > 0}
<ul class="topnav">
{foreach from=$nodelist item=node}
{if $node->depth > $node->prevdepth}
{repeat string='<ul class="subnav">' 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->depth == 1}
<li class="subnav"><a href="{$node->url}">{$node->menutext}</a>
{else}
<li><a href="{$node->url}">{$node->menutext}</a>
{/if}
{/foreach}
{repeat string="</li></ul>" times=$node->depth-1}</li>
</ul>
{/if}

Merci.


[Résolu] Problème sur un gabarit de menu - lemirandais - 19/11/2010

Met à jour ta version de cmsms, on est actuellement à la 1.8.2.


[Résolu] Problème sur un gabarit de menu - jce76350 - 19/11/2010

>Met à jour ta version de cmsms, on est actuellement à la 1.8.2.
heu non pas possible regarde l'hébergeur Wink De plus loupé on est en 1.9 !!!
>Nom de l'hébergeur : free.fr
= 5.1.3RC4-dev


[Résolu] Problème sur un gabarit de menu - airelibre - 20/11/2010

Bonjour drmicro,

Et que donne la sortie HTML de CMSMS (via la balise {menu}) ?


[Résolu] Problème sur un gabarit de menu - drmicro - 20/11/2010

Bonjour

Cela donne :

<ul class="topnav">
<li class="subnav"><a href="#">Accueil</a>
</li>
<li class="subnav"><a href="#">Produits</a>
<ul class="subnav">
<li><a href="#">Produit 1</a>
</li>
</ul>
</li>
</ul>


Effectivement je n'avais pas pensé à ça.

Je n'ai pas besoin du class="subnav" dans le <li>.

Sinon ça à l'air correct.


[Résolu] Problème sur un gabarit de menu - drmicro - 20/11/2010

Donc en fait ça ne va pas plus loin dans le processus malgré tous les menus et sous-menus créés.

<ul class="topnav">
<li><a href="#">Accueil</a>
</li>
<li><a href="#">Produits</a>
<ul class="subnav">
<li><a href="#">Portes</a>
</li>
</ul>
</li>
</ul>

Il doit y avoir des boucles dans le tpl qui ne sont pas bonnes.

Je suppose donc que le problème est ici :

{if $node->depth == 1}
<li class="subnav"><a href="{$node->url}">{$node->menutext}</a>
{else}
<li><a href="{$node->url}">{$node->menutext}</a>
{/if}

Merci de bien vouloir m'aider


[Résolu] Problème sur un gabarit de menu - drmicro - 20/11/2010

Bon, je crois que je vais prendre la solution de facilité.

Je vais mettre dans les href de mon menu en dur : index.php?page=nomdemapage

C'est pas le top mais ça fonctionne.


[Résolu] Problème sur un gabarit de menu - bess - 20/11/2010

Citation :C'est pas le top mais ça fonctionne.


je confirmes c'est pas top, tu peux me rappeler l'intérêt d'utiliser un outils comme cmsms si c'est pour se passer des url dynamique dans le menu ?

si tu essayais plutôt de partir d'un menu qui fonctionne et d'adapter ENSUITE celui ci avec tes outils Jquery, ca serait pas plus simple ?


[Résolu] Problème sur un gabarit de menu - airelibre - 22/11/2010

Je rejoins Bess sur sa proposition, pars du gabarit minimal de menu et regarde déjà si tout le menu s'affiche dans le code HTML avant d'y adjoindre du JQuery.

A+


[Résolu] Problème sur un gabarit de menu - drmicro - 24/11/2010

Merci à vous pour vos conseils