We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 34001
    • 428 Posts
    Jean-Christophe B. Reply #1, 17 years ago
    Bonsoir,

    sur mon site, j’ai une section colloques avec pour chaque colloque des TV qui lui sont associée.
    Une de ces TV me sert à afficher l’URL du site Internet du-dit colloque. Dans mon template, cela se présente sous cette forme :

    <div class="box">
    [*ColloqueSite*]
    </div>
    


    J’ai défini dans mon CSS des propriétés pour la class box (notamment une couleur en background).

    Le problème est le suivant : pour certains colloques, il n’y a pas de sites Internet et je laisse donc le champ de la TV vide. Par contre, la div s’affiche quand même, mais vide évidemment (on voit juste la couleur de fond). C’est justement là où arrive ma question : si je ne remplit pas le champ de ma TV, comment faire pour que la div ne s’affiche pas ?

    Bon, je ne sais pas si je suis très clair... Enfin, merci d’avance pour votre aide !

    JC - en plein dans la "learning curve" de ModX, mais je m’accroche... wink
      Intégrateur web freelance
      • 23050
      • 1,842 Posts
      Bonsoir Valis,

      Il te faut utiliser le plugin PHx. Il va justement te permettre des affichages conditionnels.

      Voici le code que tu vas insérer dans ton template :
      [+phx:if=`[*ColloqueSite*]`:isnot=``:then=`<div class="box">[*ColloqueSite*]</div>`+]

      Ici, tu dis que si ColloqueSite est différent de vide (donc contient une URL), tu affiches ton div. (Sinon, tu ne fais rien)

      Tu aurais aussi pu indiquer le code suivant :
      [+phx:if=`[*ColloqueSite*]`:isnot=``:then=`{{AfficheColloque}}`+]


      où AfficheColloque est un chunk qui contient
      <div class="box">[*ColloqueSite*]</div>


      Pour en savoir plus sur PHx, je t’invite à consulter la doc : http://wiki.modxcms.com/index.php/PHx

      J’espère avoir été claire wink
        • 34001
        • 428 Posts
        Jean-Christophe B. Reply #3, 17 years ago
        Bonsoir Perrine,

        c’est on ne peut plus clair. La preuve, j’ai réussi ! laugh
        J’ai fait la même manip’ avec l’ensemble de mes TV et ça fonctionne à merveille.

        Merci beaucoup... smiley
          Intégrateur web freelance