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

    J’attaque ma deuxième journée MoDx et j’ai une deuxième question (une par jour c’est correct non ? grin huh)

    J’ai un léger soucis avec le snippet DropMenu :

    J’ai une arborescence du type : les dossier sont entre crochets [ ] et l’id des documents entre parenthèses

    Accueil (1)
    [Ressources] (26)
    [Ressource 1] (30)
    Item 1 (31)
    Item 2 (32)
    [Ressource 2] (33)
    Item 1 (34)
    Item 2 (35)
    ...
    [Articles] (36)
    [Articles de moi] (37)
    Article 1 (38)
    Article 2 (39)
    [Article de qqun d’autre] (40)
    Article 1 (41)
    Article 2 (42)
    ...
    Contact (43)

    J’aimerais que lorsque l’on est dans la page Ressouces (26) a droite s’affiche l’arborescence des ressources, et lorsque l’on est dans la page articles, l’arborescence des articles s’affiche à droite.

    Pour cela j’ai pensé qu’il fallait que je fasse une variable de modèle comme cela (il s’agit d’une liste) :

    Arborescence Ressources==[[DropMenu?&startDoc=`26`]] || Arborescence Articles == [[DropMenu?&startDoc=`36`]] 


    Comme cela, lorsqu’un rédacteur fait un article, il suffit qu’il choisisse dans la liste l’arborescence qu’il souhaite afficher en fonction de l’endroite ou il a placé le document.

    Mais le problème c’est que lorsque je fait cela, le menu à droite affiche toute l’arborescence du site.

    Quelle erreur j’ai commise ? il me semblait qu’en faisant
    [[DropMenu?&startDoc=`26`]] 
    Le menu afficherai toutes les arborescences du dossier qui à l’id 26 et non pas de tout le site. C’est comme si mon argument ne servait à rien.

    Quelqu’un à une idée ?

    Edit :

    Pour aller plus loin, on pourrait aussi imaginer que le rédacteur n’ait même pas à choisir dans la liste, que selon ou il a placé l’article on récupere automatiquement le premier dossier de l’arborescence dans lequel il est et afficher le Menu correspondant à droite. Mais je ne voir pas comment faire cela, c’est pour ca que je suis parti d’une variable de modèle à la base avec une liste, mais cette solution m’interesse également.

    (en fait j’aimerais bien qu’on m’explique les 2 manières histoire de comprendre un peu mieu le fonctionnement de ce formidable CMS)
      • 33579
      • 52 Posts
      Ok, la solution avec les variables de modèle marche en fait... Surement un problème avec le cache...

      Par contre, je suis toujours intéréssé par une réfléxion sur l’automatisation du système que j’ai évoqué en éditant mon premier post.

      J’imagine qu’il y a un moyen de récupérer automatiquement l’ID d’un document courant et ensuite de remonter les id des parents, mais j’aimerai avoir une piste car je n’ai rien trouvé dans la doc qui réponde à cette question.

      Edit : Je viens de penser à une autre solution qui peut être tout aussi pratique que de récupérer automatiquement l’Id des dossiers parents.

      Est-il possible d’appliquer une variable de modèle à un dossier et à tous les sous dossiers et documents qu’il contient ?
        • 27889
        • 415 Posts
        id du document courant:
        dans un snippet :$modx->documentObject[’id’]
        dans le document : [+id+]

        id du parent :
        dans un snippet :$modx->documentObject[’parent’]

        avec le module "DocManager" disponible depuis la RC1 je crois tu peux appliquer (manuellement) une TV au document que tu veux:
        n* - Change setting for this document and immediate children
        n** - Change setting for this document and ALL children
        n-n2 - Change setting for this range of documents
        n - Change setting for a single document

        Example: 1*,4**,2-20,25 - This will change the selected setting for documents 1 and its children, document 4 and all children, documents 2 through 20 and document 25.
          MODx Sites & Prestations: http://dp-site.fr [Last MODx Site]
          MODx Repository: [HOME] [MetaTagsExtra] / Current Dev: [xFDM]
          • 33579
          • 52 Posts
          Ok, par contre tu va à peine trop vite pour moi grin huh

          J’ai regardé au niveau de docManager, je l’ai téléchargé et installé seulement comment l’utiliser après ?

          Ce n’est apparement pas un snipper (il se met dans assets/libs/) je ne sais pas quoi en faire apres huh

          Et d’où tiens-tu ces informations

          avec le module "DocManager" disponible depuis la RC1 je crois tu peux appliquer (manuellement) une TV au document que tu veux:
          n* - Change setting for this document and immediate children
          n** - Change setting for this document and ALL children
          n-n2 - Change setting for this range of documents
          n - Change setting for a single document

          Je suis allé voir la doc sur le site, je ne les ai pas trouvés.
            • 27889
            • 415 Posts
            Excuse moi pour les informations un peu brèves, j’étais un peu pressé mais je suis à ta disposition.

            Aie, je vien de vérifier quelquechose, on ne parle pas du même Doc Manager, il existe en effet une classe de ce nom dans le repository, c’est ce que tu as téléchargé je crois.

            En fait le doc manager dont je parle est installé par défaut depuis les version 0.9.5RC1. (à vérifier pour la 0.9.2.2)
            Si tu as la 0.9.2.2 ou inférieur il n’est pas disponible.
            Donc pour les version 0.9.5RC1 et supérieure il suffit dans le menu du manager d’aller dans Modules, puis Doc Manager.

            J’espère avoir été plus clair.
              MODx Sites & Prestations: http://dp-site.fr [Last MODx Site]
              MODx Repository: [HOME] [MetaTagsExtra] / Current Dev: [xFDM]
              • 33579
              • 52 Posts
              ok, le soucis c’est que la 0.9.5 est en version beta encore.... Pas top pour la mettre sur un site en production.

              N’y a t’il pas un doc manager installable sur une 0.9.2 ?

              Ou alors, si la 0.9.5 est correct, puis-je mettre ma version à jour par un upgrade ? (histoire de pas refaire tout ce que j’ai déjà fait sur ma version.)

              Ou encore, n’y a t’il pas une autre solution que doc manager ?
                • 27889
                • 415 Posts
                C’est vrai la 0.9.5 est en beta, je pense que de toute façon tu y passera un jour ou l’autre parcequ’il il a pas mal de choses qui ont été rajouté, modifié, corrigé...
                Si ton site est un site de production tu peux attendre qu’elle passe en stable et procéder avec $modx->dbquery pour effectuer tes propres requêtes pour affecter les tv aux documents que tu souhaites.
                  MODx Sites & Prestations: http://dp-site.fr [Last MODx Site]
                  MODx Repository: [HOME] [MetaTagsExtra] / Current Dev: [xFDM]
                  • 33579
                  • 52 Posts
                  Ok, merci

                  J’ai installé la 0.9.5 RC2 pour pouvoir bénéficier du docmanager, mais j’ai rencontré quelques problèmes avec, le titre du sujet ne correspondant plus à mon problème, j’ai pense qu’il était préférable de créer un autre sujet.

                  ici