Les filtres de test

D’autres filtres de test et de logique existent. On trouvera les filtres « ? », « sinon », « oui », « non », « et », « ou », « xou » qui permettent permettent de répondre à la plupart des besoins.

  • |?{vrai,faux} retourne "faux" si ce qui entre dans le filtre est vide ou nul, sinon "vrai".
  • |sinon{ce texte} retourne "ce texte" seulement si ce qui entre dans le filtre est vide, sinon, retourne simplement l’entrée.
  • |oui retourne un espace ou rien. C’est équivalent à |?{' ',''} ou |?{' '} et permet de retourner un contenu non vide (un espace) pour signaler que les parties optionnelles des balises doivent s’afficher.
  • |non est l’inverse de |oui et est équivalent à |?{'',' '}
  • |et permet de vérifier la présence de 2 éléments
  • |ou vérifie la présence d’un des deux éléments
  • |xou vérifie la présence d’un seul de deux éléments.

Par ailleurs, SPIP comprendra les équivalent anglais « yes », « not », « or », « and » et « xor »

Exemple

// affiche le chapeau s'il existe, sinon le début du texte
[(#CHAPO|sinon{#TEXTE|couper{200}})]
 // affiche "Ce titre est long" seulement si le titre fait plus de 30 caracteres
[(#TITRE|strlen|>{30}|oui) Ce titre est long ]
 
[(#CHAPO|non) Il n'y a pas de chapo ]
[(#CHAPO|et{#TEXTE}) Il y a un chapo, et un texte ]
[(#CHAPO|et{#TEXTE}|non) Il n'y a pas les deux ensemble ]
[(#CHAPO|ou{#TEXTE}) Il y a soit un chapo, soit un texte, soit les deux ]
[(#CHAPO|ou{#TEXTE}|non) Il y a ni chapo, ni texte ]
[(#CHAPO|xou{#TEXTE}) Il y a soit un chapo, soit un texte (mais pas les deux, ni aucun) ]
[(#CHAPO|xou{#TEXTE}|non) Il y a soit rien, soit tout, mais pas l'un des deux ]

Auteur Matthieu Marcillaud Publié le : Mis à jour : 24/11/09

Traductions : English, français