Template:Ifnotempty
Appearance
This template is used on approximately 13,000 pages and changes may be widely noticed. Test changes in the template's /sandbox or /testcases subpages, or in your own user subpage. Consider discussing changes on the talk page before implementing them.
Transclusion count updated by Ahechtbot. |
With this template #if can be used in a way such that it does not strip spaces and newlines from the "then" and "else" part. For evaluating the condition spaces and newlines are stripped like with ParserFunctions.
This template can be substituted.
Usage
[alilan ya ing pikuwanan]{{ifnotempty| x | A | B }}
gives " A "{{ifnotempty|x| A | B }}
gives " A "{{ifnotempty| | A | B }}
gives " B "{{ifnotempty|| A | B }}
gives " B "
Compare:
{{#if:x| A | B }}
gives "A"{{#if:| A | B }}
gives "B"
Internal technical details
[alilan ya ing pikuwanan]For evaluating the condition (determining non-emptiness of the first parameter) the template uses parser function #if, producing 1 if the condition is true, and 2 otherwise. The template with name equal to "P" followed by the index value produced (hence Template:P1 or Template:P2), is called with as parameters A and B. This produces either A or B, without trimming. The template's code is a substitution-safe version of
{{ {{#if: {{{1}}} | P1 | P2 }} |{{{2}}}|{{{3}}}}}