Vérifier plusieurs conditions dans un filtre de test

mercredi 7 mai 2008

SPIP / filtres / astuce

Encore une astuce en différé du canal IRC #spip.

Comment vérifier qu’une balise est égal à "A ou B" dans un filtre de test ?

[(#ID_ARTICLE|match{^(8|15)$}|?{'test ok',''})]

Ce code affichera "test ok" si #ID_ARCTICLE vaut 8 ou 15.

Merci à kent1 et marcimat

Vos commentaires

  • Manar

    salut,

    on peut également utiliser la fonction in_array(selon des cas biensûr) :

    [(#ID_ARTICLE|in_array{#ARRAY{0,valeur1,1,valeur2,2,valeur3,...}}|?{'test ok',''})]

    @+

    4 juillet 2008, 16:19

  • arilanto

    bonjour,

    moi j’aimerais savoir comment on fait :
    si #ID_ARCTICLE ne vaut PAS 8 ET ne vaut pas 15, alors affiche çà, sinon affiche autre chose

    d’avance merci

    7 juillet 2009, 15:12

  • bb

    Pour faire ce que tu veux il suffit d’écrire ceci :

    [(#ID_ARTICLE|!={8}|oui)
    [(#ID_ARTICLE|!={15}|oui)
    Affiche ça
    ]
    ]

    Le filtre oui est disponible depuis SPIP 2.0 et aussi en SPIP 1.9 si tu as le plugin CFG installé et à jour.

    Bon courage ++

    7 juillet 2009, 18:46

  • Julienpit

    Sur ce meme principe, est il possible de faire le test suivant ?

    Si #SESSIONstatut egal ominireso ou #SESSIONstatut egal 5poubelle alors afficher ca

    2 décembre 2009, 13:25

  • bb

    Oui bien sûr, les filtres des teste permettent de tester tout ce qu’on veut. Par contre un test sur la balise #SESSION fera que la page dans laquelle il est employé sera recalculée à chaque visite (cf la doc de la balise session).

    2 décembre 2009, 15:43

  • pi r

    "un test sur la balise #SESSION fera que la page dans laquelle il est employé sera recalculée à chaque visite", heuu, rassure moi tu veux dire le fichier dans lequel il est employé n’est-ce pas ?

    20 décembre 2010, 20:31

  • bb

    Salut, oui c’est bien du squelette dans lequel la balise est utilisé dont je parlais. Comme indiqué sur programmer.spip.org à propos de la balise session :

    La présence de cette balise, génère un cache différent par visiteur authentifié sur le site, et un cache pour les visiteurs non authentifiés.

    http://programmer.spip.org/SESSION

    Par contre si la balise session est utilisée dans un inclure il faut bien noter la différence de comportement de <INLCURE> et #INLCURE. La deuxième notation fait une inclusion statique qui ne permet pas de séparer le cache de l’appelant et de l’appelé.

    http://www.spip.net/fr_article1828.html

    ++

    21 décembre 2010, 11:29

Répondre à cet article

Qui êtes-vous ?
Ajoutez votre commentaire ici
  • Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.