We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 26550
    • 1 Posts
    Bonjour,
    Je souhaiterai savoir comment il est possible de passer des paramètres a une page généré par wayfinder.
    Mon exemple :
    > Je créer un page dans le manager
    > je voudrais pouvoir l’appeller en lui donnant des params $_GET
    > sauf que comme mon menu étant généré par wayfinder j’ai juste : mapage.html (html car j’utilise la réecriture d’url)
    > comment puis-je dire a modix qu’il fasse : mapage.html?truc=1&bidul=2

    En effet j’ai un model dans lequel j’ai un script php (vi un snippets) et je souhaiterai récupérer des valeurs par l’url

    Je sais pas si je suis bien clair ?!?
    Je n’ai rien trouvé correspondant à ça sur le net et ça m’ettonne un peu

    Merci aux personnes qui voudront bien m’aider.
      • 36731
      • 13 Posts
      Bonjour,

      Je ne sais pas si cela pourra t’aider, mais moi j’ai fait passer un paramètre dans wayfinder en utilisant le snippet GetField.
      Comme je l’utilise pour tous les sous-menus (niveau 2 dans l’arborescence) j’ai modifié le code dans WFD_innerRowTpl de la manière suivante :

      <li[+wf.classes+]><a href="[+wf.link+]&&expandable=[[GetField? &docid=`[+wf.docid+]` &field=`menuindex`]]">[+wf.linktext+]</a>[+wf.wrapper+]</li>


      où le paramètre 
      &&expandable=[[GetField? &docid=`[+wf.docid+]` &field=`menuindex`]]
      renvoie l’index de menu de la page en cours.

      voilà, peut-être que cela te donnera des idées...

      a++
        • 36731
        • 13 Posts
        à ce propos, je me suis heurté à un problème avec le passage de paramètre dans les url dans wayfinder ----> l’utilisation de FirstChildRedirect en parallèle.

        Car ce snippet, si vous l’utilisez, vient casser tous les efforts d’écriture d’url.
        ex : url créee par wayfinder = index.php?id=1&&toto=7

        pour peu que vous souhaitiez que la page id=1 redirige vers son premier enfant id = 12 vous perdez le toto=7 puisque l’url devient index.php?id=12 ...

        En dupliquant FirstChildRedirect pour créer un nouveau snippet, vous pouvez alors modifier la ligne suivante :
        $firstChildUrl= $modx->makeUrl($firstChild[’id’], ’’, ’toto=7’);
        -- ce qui ajoute un paramètre à l’url de redirection. Mais dans ce cas toto vaut toujours 7 ...

        Pour le rendre dynamique à partir d’un résultat d’un autre Snippet (ici GetField qui renvoit l’index de menu du doc en cours),il y a cette solution :
        $firstChildUrl= $modx->makeUrl($firstChild[’id’], ’’, ’toto=’. $modx->runSnippet(’GetField’, array(’field’ => menuindex)));

        voilà, cela pourra peut-être apporter un complément.

        a++