We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 8790
    • 526 Posts
    Bonjour,

    Y-a-t-il un moyen avec WF pour :

    A partir d’un menu listant les doc fils d’un parent / ici une gatégorie de produits / (et qui n’est pas le niveau 0),
    et une fois cliqué un item de ce menu, conserver le même menu dont le startid est alors devenu le niveau parent,
    sans refaire un nouveau TPL pour l’affichage des items?

    Là j’ai bien la liste envignettes mais si cliqué le menu n’existe plus undecided

    Le menu "parent" est construit à partir de vignettes appellées ainsi :
    [!Wayfinder?   &rowTpl=`vignette-stru` &startID=`[*parent*]` &level=`2`  &outerClass=`menug-stru-3` &firstClass=`first` &hereClass=`active` &lastClass=`last`!]
    


    et avec son tpl :

    <li [+wf.classes+]>
    <a href="[+wf.link+]" title="détails du produit  [+wf.linktext+]">
    <img src=assets/templates/cetav-stru/images/vignettes/stru-[+wf.docid+].gif height="86px" > 
    </a> 
    [+wf.wrapper+]
    </li>


    Merci aux avancés de WF smiley
      Schtroumpf Grognon - Grouchy Smurf
      ---------------------------------
      Faites pas attention.. - Don&#39;t pay attention
      http://www.dzi-neo.net
      • 11975
      • 2,542 Posts
      Salut,

      bien sur c’est possible mais il va falloir plus d’infos pour te guider( screenshot arbo)

      généralement on utilise ultimateParent pour fixer le startId (attention il y a une typo dans ton appel).


      :-)
        Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
        • 8790
        • 526 Posts
        Ah..merci.


        Voici :
        (rem: l’ergonomie de cetet navigation atypique n’est pas le sujet du post.. parce que c’est discutable, mais bon).

        A un 1er niveau de l’arbre se trouve un dossier (que je nommerais pour simplifier produits)

        0 -| --produits (47)
        | -- cat1
        | -- cat2
        | -- cat3


        Dans chaque categorie il y a autant de sous dossiers que nécessaires pour les sous-cat, et enfin, chacun contient une série de pages ’produits’

        0 -| --products
        | -- cat1 (50)
        | -- sub-cat1 (52)
        | -- item1 (62)
        | -- item2 (63) ....

        | -- sub-cat2 (65)
        | -- sub-cat3 (66)
        | -- sub-cat4 ....
        | -- cat2 (51)...
        ...
        J’ai passé sur un menu 1 listant tous les dossiers sous 47( un level) qui nous amène sur le menu2.

        Donc le menu 2 liste tout les dossiers sous 50 ou 51 ou etc (les catégories) SANS les sous dossiers (tjs un seul level ).
        Puis le menu qui coincouille : menu 3 qui liste bien les items finaux de la ss cat précédement cliquée. C’est une liste en imagettes.

        J’espère que cela est suffisament clair ..


        J’ai aussi posté en international la même question avec toute l’arbo.
        c’est là au cas où :http://modxcms.com/forums/index.php?PHPSESSID=291371def972cc644c7e29e0b146b77f&topic=11488.0
          Schtroumpf Grognon - Grouchy Smurf
          ---------------------------------
          Faites pas attention.. - Don&#39;t pay attention
          http://www.dzi-neo.net
          • 11975
          • 2,542 Posts
          Re,

          juste une astuce qui pourrait être utile au cas ou tu souhaites varier un appel de wayfinder en fonction du contexte.

          Cree une TV type option par exemple
          Dans options values: menu principal=={{chunkAppelWFmenuPrincipal}}||menu secondaire=={{chunkAppelWFmenuSecondaire}}
          Dans default value: @INHERIT

          De cette façon tu peux gérer depuis les pages (ou leur parent) le menu à afficher.


          :-)
            Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
            • 8790
            • 526 Posts
            heuuuu..

            Là je ne connais pas encore ce dont il s’agit.

            Où se trouve les doc de ce genre de syntaxe ?

            Grâce à mon partenaire php-iste nous avons trouvé une solution par aussi une TV. on a l’id du parent si on est sur l’item et l’id du dossier si on est sur le dossier.
            @EVAL if ($modx->documentObject['isfolder']) {return $modx->documentObject['id']; }else{ return $modx->documentObject['parent'];} 


            Appel:
            [!Wayfinder?   &rowTpl=`vignette-stru`   &startId=`[*depart*]`  &level=`1`  &outerClass=`menug-stru-3` &firstClass=`first` &hereClass=`active` &lastClass=`last`!]



              Schtroumpf Grognon - Grouchy Smurf
              ---------------------------------
              Faites pas attention.. - Don&#39;t pay attention
              http://www.dzi-neo.net
              • 18219
              • 826 Posts
              Helio a tendance à bruler les étapes : Je vais tenter de donner plus des précisions sur ces conseils wink Il me reprendra si besoin.

              Dans la page d’accueil, si tu souhaites afficher le menu tu dois rentrer comme valeur au paramètre &startID=`[*id*]`

              Pour un document juste en dessous dans l’arborescence, pour afficher le même menu, il te faudra modifier le paramètre &startID=`[*id*]` par &startID=`[*parent*]`

              Si on descend encore dans l’arborescence &startID=`[*id*]` devient &startID=`[[ultimateParent]]` (donc appel à ce snippet avec les paramètres qui vont bien exemple $top=`num de dossier` - voir doc de ce snippet)

              Donc si tu veux intégrer l’appel de WF dans le même template, cela se complique puisque la valeur de &startID varie en fonction du niveau de ton arborescence.

              L’idée est donc de placer cette valeur ou mieux l’appel de WF (avec le bon paramétrage) dans une variable de modèle, elle-même placé dans ton template.
              A chaque document, l’appel de WF se fait en fonction des paramètre défini par rapport à l’arborescence.
              Page d’accueil : {{chunkAppelWFmenuPrincipal}}
              Dossier : {{chunkAppelWFmenuSecondaire}}
              ss Dossier : {{chunkAppelWFssmenuSecondaire}}
              etc.

              La technique est un peu sophistiquée, on peux l’admettre : on peux préférer l’appel de WF avec l’utilisation de ultimateParent.
              Bon j’espère avoir éclairé ta lanterne smiley
                Marc
                I&#39;m French... Sorry for my bad English, I use &#39; Google Translator&#39; or other... but that remains that tools wink
                • 11975
                • 2,542 Posts
                merci Marc d’avoir dilué mon idée smiley

                C’est tout à fait ça.

                Si on prend comme élément variable entre deux menus le seul parametre &startId, ultimate peut convenir mais si on souhaite ajouter des conditions de forme (definir template de chaque niveau) donc si la distinction entre les deux menus ne se limitent pas à leur seule point d’entrée, cette technique convient d’avantage.

                :-)
                  Made with MODx : [url=http://www.copadel.com]copadel, fruits et l
                  • 8790
                  • 526 Posts
                  voui voui voui. shocked

                  Merci beaucoup.

                  je vais tenter de comprendre tout ca. cool

                  les options values me sont totalement inconnues: j’ignorais même à quoi ca servait.

                  Là, effectivement ca m’entre-ouvre une possibilité nouvelle pour d’autre dossiers, je vais m’y pencher.


                  Mais, hum sinon notre solution avec isfolder, ..elle est pas bien ?

                    Schtroumpf Grognon - Grouchy Smurf
                    ---------------------------------
                    Faites pas attention.. - Don&#39;t pay attention
                    http://www.dzi-neo.net
                    • 18219
                    • 826 Posts
                    Quote from: elz64 at Jan 29, 2007, 12:22 PM

                    ...
                    les options values me sont totalement inconnues: j’ignorais même à quoi ca servait.
                    Là, effectivement ca m’entre-ouvre une possibilité nouvelle pour d’autre dossiers, je vais m’y pencher.
                    ...
                    Oui une TV peut prendre différente forme : RichText, image, choix multiple,...
                    Ce qui permet de personnaliser MODx en fonction de ce que tu cherches à faire.
                    Cela fait partie de la puissance de MODx wink

                    Quote from: elz64 at Jan 29, 2007, 12:22 PM

                    Mais, hum sinon notre solution avec isfolder, ..elle est pas bien ?
                    Je ne l’ai pas regardé ce que pouvais te donner cette voie.
                    Cela revient à créer ton propre snippet pour répondre à ta problèmatique. Cela peut marcher et je n’en doute pas. Ceci dit cette évaluation tu l’a trouve dans les autres outils mis à ta disposition notamment : ultimateParent (regarde ce snippet et sa documentation, tu verras qu’il répond à ce que tu recherches wink)
                    Parfois ce n’est pas la peine de réinventer la roue.
                    L’intérêt est évident : ultimateParent va suivre une évolution (avec les mises à jours de MODx) avec le temps pas tes propres développement. Et ce que tu as développé en spécifique peut ne plus fonctionner avec une prochaine version de MODx.
                      Marc
                      I&#39;m French... Sorry for my bad English, I use &#39; Google Translator&#39; or other... but that remains that tools wink