Template:Ifnotempty: Difference between revisions
Jump to navigation
Jump to search
m Changed protection level for "Template:Ifnotempty": high-risk template with 4000+ transclusions ([Edit=Require template editor access] (indefinite) [Move=Require template editor access] (indefinite)) |
m 1 revision imported |
(No difference)
|
Latest revision as of 07:22, 1 June 2021
<templatestyles src="Module:Documentation/styles.css"></templatestyles>
Template documentation
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
{{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
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.