We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 23171
    • 4 Posts
    Bonjour à toutes et à tous.

    J’arpente ce forum depuis un petit bout de temps, je viens de spip et j’ai changé pour modx smiley J’ai déjà réalisé un site sous modx relativement simple afin de me familiariser avec, et c’est nickel !

    Je ne code pas le php et je me retrouve bloqué dans un nouveau projet, sujet de ce thread :

    J’ai besoin d’afficher le [*menuindex*] dans mes pages sous certaines conditions, jusque là tout va bien, on a GetField.

    Maintenant j’ai 2 menus sur une page : un menu principal - horizontal - (arboresence level 0) et un sous-menu - colonne gauche - (arboresence level 1) lui même contenant un sous menu (arboresence level 2).

    Là où ça ce complique :

    Il me faut afficher le [*menuindex*] sur ma page du parent d’arboresence level 1 que je sois sur une page de ses enfants ou sur lui.
    Et lorsque je suis sur un parent d’arboresence level 0, je ne dois pas afficher de menuindex ou un menuindex=0.

    Et là j’avoue je suis perdu :p Je n’ai pas trouvé de snippet qui explore l’arboresence par level absolus, seulement relatifs à un doc id ou un doc parent,... et je ne vois pas trop comment me dépatouiller de tout ça.

    Je ne sais pas si j’ai été clair, mais je l’espère !

    Merci pour votre aide, vos pistes ou vos solutions.
      • 23050
      • 1,842 Posts
      Bonjour pgf et bienvenue smiley

      Je ne suis pas sure d’avoir compris ce que tu souhaites mais peut-être que le snippet UltimateParent va être ton ami... Le cas échéant, tiens-nous au courant.
        • 23171
        • 4 Posts
        Bonjour Perrine,

        En fait j’essayais d’adapter le plug-in accordion de mootools avec wayfinder sur mon menu de gauche.

        Le problème que j’avais était que mon accordéon s’ouvrait toujours dans le premier sousmenu par défaut, et non dans le sous menu actif...
        Accordion fonctionne avec des index (1,2,3,4,...) qui identifie chaque sous menu. Le hasard voulait que justement le TV menuindex correspondait à cet index. Je voulais donc le récupérer afin de le spécifier comme index dans mon code d’accordion.
        L’autre problème était que mon menu de gauche était lui-même un enfant de mes premiers folders. Ultimateparent me renvoyait donc à l’index du parent ultime et non du parent de mon menu de gauche... Et lorsque j’étais sur un parent ultime, il fallait que l’index soit de 0.

        (jusque là si vous m’avez suivi vous êtes fortiches lol).

        Pour résoudre mon problème, j’ai utilisé le snippet GetField afin de trouver le menuindex, avec comme option docid=[*parent*].
        Maintenant comme les parents ultimes n’ont pas de parents, Getfield me renvoyait aucune valeur sur eux. J’ai donc dû modifié légérement le snippet GetField pour qu’il me renvoie la valeur 1 lorsque il me renvoyait rien.

        Pour être un peu plus concret, vous pouvez voir ce que ça donne ici sur le menu de gauche (c’est ma page perso en construction, merci de votre indulgence :p, à ouvrir de préférence avec firefox pour le moment...) http://www.saccades.ch/travaux.html