View previous topic :: View next topic |
Author |
Message |
newty Smarty Rookie
Joined: 31 Jul 2008 Posts: 7
|
Posted: Thu Jul 31, 2008 10:43 am Post subject: Des soucis smarty pour intégrer mon menu sous cms made simpl |
|
|
Bonjour,
Je viens vers vous en fait car je suis en train d'adapter un menu à mon design pour mon futur site web. Le tout utilise smarty et le cms que j'utilise est cms made simple.
Alors j'ai tout d'abord fait ça sur une simple page que vous pouvez retrouver ici www.azane.dom/Azane-1
Je ne connais pas grand chose à smarty mais après de nombreuses tentatives, ça s'améliore, j'ai mes 4 images du menu affichées mais j'ai également 1, 2, 3 qui s'affichent à côté... J'ai l'impression que {$cpt++} affiche également la variable. Que faire ?
Code: |
{if $count > 0}
<div id="imageMenu">
<ul>
{$cpt = 0}
{foreach from=$nodelist item=node}
{if $node->depth == 1}
{if $cpt == 0}
<li class="accueil"><a href="#"></a></li>
{/if}
{if $cpt == 1}
<li class="quisommesnous"><a href="#"></a></li>
{/if}
{if $cpt == 2}
<li class="activite"><a href="#"></a></li>
{/if}
{if $cpt == 3}
<li class="recrutement"><a href="#"></a></li>
{/if}
{$cpt++}
{/if}
{/foreach}
</ul>
</div>
{/if}
|
|
|
Back to top |
|
newty Smarty Rookie
Joined: 31 Jul 2008 Posts: 7
|
Posted: Thu Jul 31, 2008 8:37 pm Post subject: |
|
|
En fait, le lien c'est ce que ça doit faire au final. Là, c'est juste la découpe d'une page type. Maintenant, j'intègre ça sur cms made simple avec un gabarit. Et pour les menu c'est du smarty.
Pour l'instant, voici le rendu que j'ai en local (ce sera plus parlant ) :
www.hiboox.fr/go/images/informatique/,a47d38f472ebfbaaa9964b9381dee08e.jpg.html |
|
Back to top |
|
arnogb69 Smarty Rookie
Joined: 07 May 2008 Posts: 11
|
Posted: Fri Aug 01, 2008 7:41 am Post subject: |
|
|
T'as vérifié d'où viennent ces nombres dans le code source ?
A priori, plutot que nous donner ton algorithme, tu devrais nous passer ton code terminé, ton .php et .tpl, pour vérifier |
|
Back to top |
|
newty Smarty Rookie
Joined: 31 Jul 2008 Posts: 7
|
Posted: Fri Aug 01, 2008 8:07 am Post subject: |
|
|
Je poste ça dans une minutes |
|
Back to top |
|
newty Smarty Rookie
Joined: 31 Jul 2008 Posts: 7
|
Posted: Fri Aug 01, 2008 8:10 am Post subject: |
|
|
arnogb69 => A mon avis, il affiche les cpt
Le code de mon menu-cat-toto.tpl
Code: |
{if $count > 0}
<div id="imageMenu">
<ul>
{$cpt = 0}
{foreach from=$nodelist item=node}
{if $node->depth == 1}
{if $cpt == 0}
<li class="accueil"><a href="#"></a></li>
{/if}
{if $cpt == 1}
<li class="quisommesnous"><a href="#"></a></li>
{/if}
{if $cpt == 2}
<li class="activite"><a href="#"></a></li>
{/if}
{if $cpt == 3}
<li class="recrutement"><a href="#"></a></li>
{/if}
{$cpt++}
{/if}
{/foreach}
</ul>
</div>
{/if}
|
Le code de mon gabarit qui intègre le menu-cat-toto.tpl
Code: |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>{sitename} - {title}</title>
{metadata}
{stylesheet}
<script type="text/javascript" src="./design/script/mootools.js"></script>
<script type="text/javascript" src="./design/script/imageMenu.js"></script>
</head>
<body>
<div id="topNav">
<a href="toto.toto/" title="toto"><img src="./design/img/logo-toto.png" alt="toto" /></a>
<ul>
<li><a href="#" title="A propos" class="hover">A propos</a></li>
<li><a href="#" title="Plan du site">Plan du site</a></li>
<li><a href="#" title="Nos partenaires">Nos partenaires</a></li>
<li><a href="index.php?page=contact" title="Contact">Contact</a></li>
</ul>
</div>
<div id="body">
<div id="topShadow"></div>
<div id="bodyPannel">
{menu template='menu-cat-toto.tpl'}
</div>
<div id="Contentmenuimg">
<p>Ullamcorper ipsum rutrum Aliquam ut eget Integer nulla lacinia nibh vestibulum. Nulla Proin elit pretium nulla sem interdum et Vivamus tellus vestibulum. Mauris Curabitur metus ante ornare nunc tempor Vestibulum magnis quis ligula. Ut sed Maecenas adipiscing sapien turpis ac pede Nulla platea facilisi. Curabitur eros sed id nisl non ut condimentum risus eu velit. Cursus. Ullamcorper ipsum rutrum Aliquam ut eget Integer nulla lacinia nibh vestibulum</p>
</div>
<br /><br />
{menu template='menu-souscat-toto.tpl'}
<div id="midle">
{content}
<br class="spacer" />
</div>
<div id="colorBg"></div>
</div>
<div id="bottomShadow"></div>
<br class="spacer" />
</div>
<div id="footer">
<a href="xiti.toto" target="_blank" title="XiTi" class="xiti"></a>
<ul>
<li><a href="#" title="Mentions légales">Mentions légales</a></li>
</ul>
<br class="spacer" />
</div>
<script type="text/javascript">
window.addEvent('domready', function(){
var myMenu = new ImageMenu($$('#imageMenu a'),{openWidth:310, border:2, onOpen:function(e,i){alert(e);}});
});
</script>
</body>
</html>
|
|
|
Back to top |
|
newty Smarty Rookie
Joined: 31 Jul 2008 Posts: 7
|
Posted: Fri Aug 01, 2008 1:46 pm Post subject: |
|
|
Et bien on m'a dit sur un autre forum d'utiliser section
J'ai donc fait :
Code: | {if $count > 0}
<div id="imageMenu">
<ul>
{section name=foo loop=nodelist}
{if $nodelist[foo]->depth == 1}
{if $nodelist[foo] == 0}
<li class="accueil"><a href="#"></a></li>
{/if}
{if $nodelist[foo] == 1}
<li class="quisommesnous"><a href="#"></a></li>
{/if}
{if $nodelist[foo] == 2}
<li class="activite"><a href="#"></a></li>
{/if}
{if $nodelist[foo] == 3}
<li class="recrutement"><a href="#"></a></li>
{/if}
{/if}
{/section}
</ul>
</div>
{/if} |
Mais j'ai l'impression que ça ne rentre pas dans le if {if $nodelist[foo]->depth == 1} |
|
Back to top |
|
newty Smarty Rookie
Joined: 31 Jul 2008 Posts: 7
|
Posted: Mon Aug 04, 2008 7:28 am Post subject: |
|
|
:bounce: |
|
Back to top |
|
newty Smarty Rookie
Joined: 31 Jul 2008 Posts: 7
|
Posted: Mon Aug 04, 2008 8:17 am Post subject: |
|
|
Je pensais vraiment trouver de l'aide ici.... Il n'y a vraiment personne qui puisse m'aider ? |
|
Back to top |
|
arnogb69 Smarty Rookie
Joined: 07 May 2008 Posts: 11
|
Posted: Tue Aug 05, 2008 6:51 am Post subject: |
|
|
Allez, on va le résoudre ^^
Est-ce que perso, je n'aime pas trop les sections, je préfère le foreach, comme toi, mais bon...
Pour ton menu, à quoi correspond ton $count?
A mon avis, ton idée est bonne, mais je crois que j'avais eu le même problème avec un compteur, essaie de l'initialiser et de l incrementer différement, à l'aide de la fonction http://www.smarty.net/manual/fr/language.function.counter.php plutôt qu'avec ton propre compteur
Code: |
<!-- Avec une SECTION -->
<!-- Initialisation du compteur -->
{counter start=0 assign=compteur}
<!-- on boucle "loop" fois -->
{section name=test2 loop=5}
<!-- la tu fais ton affichage en fonction de tes variables-->
{$smarty.section.test2.iteration} <!-- compte le nombre d iterations dans ta boucle -->
{$compteur} <!-- idem que la liste ci-dessus -->
{counter} <!-- Incremente le compteur ici -->
{/section} |
La différenciation va être pratique si tu as des 'if' et que tu ne souhaites pas incrémenter ton compteur à chaque passage de boucle... (ce qui n'est pas forcément le cas pour toi, mais on ne sait jamais)
Tiens moi au courant |
|
Back to top |
|
|