We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 20394
    • 134 Posts
    Voir le post anglais correspondant.

    A de multiples reprises j’ai vu des solutions pour parser le contenu du document pour le modifier avant son ajout dans le template.
    Les exemples que j’ai en tête sont les notes de bas de pages, Wordreplace pour remplacer les mots à la volée, un système de pagination utilisant la balise {{break}}
    La solution principale consiste à appeler un plugin lors du chargement du document. Mais alors il me semble que ce plugin est appelé indistinctement pour tous les documents du site, ce qui n’est pas forcément (même si ce n’est pas génant) ce que l’on souhaite.

    J’avais initialement pensé à un snippet qui viendrait remplacer le placeholder [*contenu*]. Ce snippet retourne le contenu du document modifié
    comme on le souhaite. Je trouve cette solution peu pratique car il faut un template pour chaque type de sortie que l’on souhaite.

    Ce que j’aimerai serait de pouvoir associé le code modificateur (disons un snippet) au document. Il s’agit donc d’un nouveau champ dans la base de donnée. Lors de l’insertion du contenu dans [*contenu*], modx vérifie si ce champ contient du code ou une référence à un snippet. Si oui il applique la transformation demandée. Si non il ne fait rien. Ensuite seulement on insère le contenu du document dans [*contenu*].
      • 20394
      • 134 Posts
      La modification du contenu pourrait prendre place après la création du documentObject. On récupère dans le champ "preparsing" le code qui va permettre de modifier le champ "content". Le résultat pourrait écraser ce champ "content", ou être mis dans un nouveau champ, "postcontent" par exemple.

      Le code associé au document pourrait être géré un peu comme une TV, avec la possibilité d’utiliser INHERIT. Ou alors plutôt un "content parser" géré comme les templates : on associe aux documents un content parser (qui par défaut serait mis à blank). Ce serait bien quand même de combiner plusieurs parsers, ce qui est possible avec les plugins.

      Ces content parsers pourraient avoir la même importance que les chunks et autres snippets. Cela me fait penser à une feuille XSLT que l’on associerait à du contenu XML.
        • 6726
        • 7,075 Posts
        Le concept me semble hyper intéressant !

        Tu devrai poster ça dans Core Code
        Ou alors envoyer un MP à Raymond Irving qui s’occupe du parser de MODx.

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


          MODx est l'outil id
          • 20394
          • 134 Posts