The |non
filter [1] returns either nothing at all or a space.
It is equivalent to |?{'',' '}
or |?{''}
, and it is used to return empty content to indicate that the optional parts of the tag should NOT be displayed.
Examples:
[(#TITRE|strlen|>{30}|non) This title is a short one]
[(#EMAIL|non) #FORMULAIRE_SAISIE_EMAIL ]
[(#SET{my_table, #LISTE})]
[(#GET{my_table}|non) this table is empty]
Caution however:
Because it reproduces the behaviour of the PHP test if($var)
, the filter [(#VARIABLE|non)]
will return « FALSE » (thus a space) if #VARIABLE is equal to "0" (zero) or is "null" or is not defined.
So with &a_variable=0
in url, writing
[(#ENV{a_variable}|non)]
will display the optional part of the tag.
To test a variable including if it is equal to "0" (zero) we use:
[(#ENV{a_variable}|strlen|non)]
See also
other test filters
logical filters