THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bon comme j'ai passé quelques nuits a m'arracher les cheveux pour faire un menu sur 3 niveaux (rubriques, sous rubriques et sous sous rubriques si il y en a, ne s'affichant que lorsque leur rubriques parente respectives sont activées)

Et que j'ai enfin fait (a peu près) ce que je voulais...
[Je dis a peu près car je n'arrive pas a maintenir le menu ouvert sur la rubrique sélectionnée]

Je partage, ça peut toujours servir.

Donc il nous faut :
Jquery si vous ne l'avez pas déjà.
Collapsor un plugin pour jquery qui permet de faire des menus déroulants sur 3 niveau (ça tombe bien)

Ensuite on rajoute dans meta.html les appels de scripts qui vont bien :
(a adapter bien sur selon vos versions et repertoires)

<script src="scripts/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="scripts/jquery.collapsor.min.js" type="text/javascript"></script>

Et la configuration du script (dans le cas ou votre menu est constitué d'une liste) toujours dans meta.html:

<script type="text/javascript">
		$(function(){
			$('ul a').collapsor();
		});
	</script>

*Pour plus d'options de configuration de collapsor, je vous invite a consulter la doc

Ne reste plus qu'a editer votre page menu.html

<ul>
<THELIA_MENU_RUBRIQUES type="RUBRIQUE" parent="0" classement="manuel" ligne="1">
	<li>
       <a href="#REWRITEURL" class="menu">#TITRE</a>
		
       <ul>
       <THELIA_BLOC_SOUS_MENU type="RUBRIQUE" parent="#ID" ligne="1" classement="manuel">
			<li>
			#FILTRE_egalsinon(#RUBRIQUE_ID||#ID||<span class="menussrub Selected">#TITRE</span>||<a href="#REWRITEURL" class="menussrub" title="#TITRE">#TITRE</a>)
            #FILTRE_different(#NBENFANT||0||     
            	<ul><THELIA_SSMENU type="RUBRIQUE" parent="#ID" ligne="1">
					<li style="padding-left:5px;">
					<a href="#REWRITEURL" class="menussrub #FILTRE_egalite(#RUBRIQUE_ID||#ID||Selected)" title="#TITRE">#TITRE</a>	
                    </li>
                    </THELIA_SSMENU>
				</ul>)
			</li>
		</THELIA_BLOC_SOUS_MENU>
		</ul>
	</li>
		
</THELIA_MENU_RUBRIQUES>
</ul>

N'oubliez pas de modifier les classes en fonction de votre feuille de style

*Notez tout de même que le niveau 1, les rubriques, n'ouvrent que le sous menu des sous rubriques, donc si vous avez une rubrique qui n'a pas de sous rubrique elle ne sera pas accessible comme ça.


**Et si vous n'avez que 2 niveaux a gerer je vous recommande un autre script, toujours avec jquery, plus simple et parametrable, et qui reste ouvert sur la rubrique active : ddaccordion.

Last edited by tetedelard (06-03-2010 14:42:16)


{TETE DE LARD} Concept store/Galerie {Designer toys, Livres d'art, Badges, T-shirts et curiosités...}

Offline


Bon... en fait, je fais la cake avec mes bouts de codes, mais il y a un truc que je viens de remarquer : l'utilisation de jquery pour le menu semble etre incompatible avec celle de scriptaculous pour le panier (suis je nouille, j'avions pas pensé a ça)...

Du coup c'est au choix, un joli menu ou un panier.
Grrr.


{TETE DE LARD} Concept store/Galerie {Designer toys, Livres d'art, Badges, T-shirts et curiosités...}

Offline


tu a essayer les anti-incompatibiltés avec jquery? du style :

<script>
var $j = jQuery.noConflict();

$j('#menu'). collapsor();

</script>

Offline


ben oui.mais cette nuit ça ne marchait pas.
Puis là, je réessaye par acquis de conscience, et miracle, ça passe !

Alors merci !


{TETE DE LARD} Concept store/Galerie {Designer toys, Livres d'art, Badges, T-shirts et curiosités...}

Offline

Offline


Bonjour tetedelard,

Y a moyen de recuperer le css et la boucle pour le menu 2 niveaux.

je sais pas faire

Merci