We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 21946
    • 283 Posts
    Bonjour; je dois créer un systeme de rubriques pour classer nos news selon leur catégorie. (anime, manga, Jeux vidéo, Musique).

    J’aimerais savoir si cette méthode vous parait correcte?

    Je crée un document news. Ce document contient ensuite trois documents qui correspondent aux trois catégories.
    ça donne niveau arborescence:


    -News (4)
    --Anime (15)
    --Manga (16)
    --Jeux Vidéo (17)

    Je veux pouvoir afficher la liste des 10 dernieres news toute catégories confondues; mon appel à ditto dans le template appelé par le document "News" est celui-ci : (merci Perinne)

    [[Ditto?  &startID=`4` &display=`10` &tpl=`listeur-news` &depth=`2` &hideFolders=`1`]]
    


    Le hidefolders me permettant de masquer les documents Anime, Manga et Jeux vidéo qui ne sont pas des news mais les catégories. Le depth 2 permettant à Ditto d’atteindre les documents rangés dans les catégories.

    J’utilise un chunk (listeur-news) pour afficher le titre , la date etc...comme je le souhaite. Là ou ça se complique un peu pour moi c’est que je veux pouvoir afficher à quelle catégorie appartient chaque news


    par exemple :
    Anime : Les contes de terremer 09-Sep-07 14:19

    Apperamment ditto ne permet pas ça directement; j’arrive seulement à récupérer dans le chunk l’ID du document parent avec le placeholder [+parent+]. Je ne peux pas l’afficher simplement l’ID en l’état alors dans le chunk servant à afficher les news; je fais un appel à ditto pour que celui m’affiche le nom (titre) du document correspondant à cet ID.

    [[Ditto? &documents=`[+parent+]` &tpl=`rubrique-news` ]] 
    


    Du coup je suis à nouveau obligé de créer un chunk pour indiquer à Ditto que cette fois-ci il ne doit bien m’afficher que le titre qui correspond au nom de ma catégorie.

    Est ce bien de cette manière qu’il faut procéder? Ou il y a plus simple? N’est ce pas trop lourd à gérer?
    Pour la gestion des catégories j’avais la premiere fois rangé tous les documents directement dans news puis je me servais d’une variable de modele pour différencier les différentes catéories (ditto faisant ensuite le travail de tri). Quelle est la meilleure solution?
      [url=http://www.savepoint.fr/index.php?id=38] -petits tuyaux pour les d
      • 6726
      • 7,075 Posts
      (je viens de penser, si c’est dans un chunk utilisé par Ditto comme template, il faut changer [tt][*parent*][/tt] par [tt][+parent+][/tt] et [tt][*id*][/tt] par [tt][+id+][/tt])


      Pas de problème pour afficher la catégorie:

      [tt][!GetField? &docid=`[*parent*]` &field=`title`!][/tt]

      Et si tu veux que ça marche même avec des items dans des sous-catégories (quelque soit leur niveau de profondeur) :

      [tt][!GetField? &docid=`[[UltimateParent? &id=`[*id*]` &topLevel=`1`]]` &field=`title`!][/tt]

      Attention, GetField n’est pas en cache et UltimateParent, oui car il s’agit d’un appel de snippet imbriqué.

      Bien sûr, dans les deux cas tu peux changer le champ que tu veux utiliser, j’ai pris l’exemple avec title mais ça marche avec tous les autres champs, y compris les TV smiley



        .: COO - Commerce Guys - Community Driven Innovation :.


        MODx est l'outil id
        • 21946
        • 283 Posts
        Merci pour cette réponse rapide !
        Je ne parviens pas à faire fonctionner après installation ce snippet pour le moment, GetField est bien compatible avec la version 0.9.6 de mod-x? (je ne la vois pas mentionnée dans la liste des compatibilités de ce snippet)

        Je précise que j’ai bien fait attention dans l’usage des * ou des + selon l’utilisation ou non au sein d’un chunk de sortie pour ditto.
          [url=http://www.savepoint.fr/index.php?id=38] -petits tuyaux pour les d
          • 6726
          • 7,075 Posts
          Et oui les forums ici, ça dépote cool
          En général il ne faut pas longtemps pour avoir une réponse...

          Pour GetField, attention à bien utiliser la version 1.3 : http://modxcms.com/getField-667.html
          Ca marche, puisque j’ai plusieurs sites qui utilisent ce genre de logique...

          Un petit copier-coller de ton appel de snippet aiderai à cerner ce qui cloche... on va trouver !

          Edit : en relisant le fil de support de GetField, je me rend compte que Grad (l’auteur de GetField) a donné une autre méthode plus simple :

          [tt][!GetField? &parent=`1`!][/tt]
            .: COO - Commerce Guys - Community Driven Innovation :.


            MODx est l'outil id
            • 21946
            • 283 Posts
            Je n’ai pas le temps de regarder ça tout de suite; mais ayant copier coller ton appel; je penche pour une mauvaise installation du snippet de ma part grin

            Si ça ne vient pas de ça, je reviendrais lundi sur ce topic pour demander des éclaircissements.
              [url=http://www.savepoint.fr/index.php?id=38] -petits tuyaux pour les d
              • 21946
              • 283 Posts
              ça marche très bien après réinstallation du snippet, merci grin
                [url=http://www.savepoint.fr/index.php?id=38] -petits tuyaux pour les d