Template:If then show/doc

From Monarchists.Wiki

This template tests whether the first unnamed parameter is not an empty string and returns it if it does. Otherwise it returns the second unnamed parameter.

This is useful when the first parameter is a {{#invoke: }} of a Lua module that may return a value or nothing. Because it uses the {{#invoke: }} just once, it simplifies the coding of infoboxes, for example.

The optional third and fourth unnamed parameters provide a prefix and a suffix for the first parameter when returned. This enables the designer to construct more complex templates that still only use one invoke of a Lua module.

Usage[edit]

Lua error in Module:Wikibase at line 40: attempt to index field 'wikibase' (a nil value). (P26) for Lua error in Module:Wikibase at line 40: attempt to index field 'wikibase' (a nil value). (Q151973)
{{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q151973|fwd=ALL|osd=no}}|unmarried}}Lua error in Module:WikidataIB at line 714: attempt to index field 'wikibase' (a nil value).
Lua error in Module:Wikibase at line 40: attempt to index field 'wikibase' (a nil value). (P26) for Lua error in Module:Wikibase at line 40: attempt to index field 'wikibase' (a nil value). (Q905)
{{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q905|fwd=ALL|osd=no}}|unmarried}}Lua error in Module:WikidataIB at line 714: attempt to index field 'wikibase' (a nil value).

Prefix and suffix[edit]

A table can be designed to display a row only when a particular property of the article exists on Wikidata.

Lua error in Module:Wikibase at line 40: attempt to index field 'wikibase' (a nil value). (P26) for Lua error in Module:Wikibase at line 40: attempt to index field 'wikibase' (a nil value). (Q151973)
{| class="wikitable"
|-
! scope="col" style="width:15em;" | Label
! scope="col" style="width:36em;" | Value
{{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q151973|fwd=ALL|osd=no}}||<tr><th>{{#invoke:WikidataIB|getLabel|P26|qid=Q151973}}</th><td>|</td></tr>}}
|}
Label Value
Lua error in Module:WikidataIB at line 507: attempt to index field 'wikibase' (a nil value).Lua error in Module:WikidataIB at line 714: attempt to index field 'wikibase' (a nil value).
Lua error in Module:Wikibase at line 40: attempt to index field 'wikibase' (a nil value). (P26) for Lua error in Module:Wikibase at line 40: attempt to index field 'wikibase' (a nil value). (Q905)
{| class="wikitable"
|-
! scope="col" style="width:15em;" | Label
! scope="col" style="width:36em;" | Value
{{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q905|fwd=ALL|osd=no}}||<tr><th>{{#invoke:WikidataIB|getLabel|P26|qid=Q905}}</th><td>|</td></tr>}}
|}
Label Value
Lua error in Module:WikidataIB at line 507: attempt to index field 'wikibase' (a nil value).Lua error in Module:WikidataIB at line 714: attempt to index field 'wikibase' (a nil value).