• New in : SPIP 2.0

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.


[(#TITRE|strlen|>{30}|non) This title is a short one]
[(#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


will display the optional part of the tag.
To test a variable including if it is equal to "0" (zero) we use:


See also

other test filters

logical filters


[1this can also be written as |not

Author Mark Published : Updated : 08/07/23

Translations : català, English, Español, français, Nederlands