• Home
  • Random
  • Recent changes
  • Special pages
  • Settings
  • About MOASSpedia
  • Disclaimers
MOASSpedia
  • 216.73.216.215
  • Talk
  • Watchlist
  • Contributions
  • Log in

Template:If then show

Template Discussion
  • Language
  • Watch
  • History
  • Edit
    • Page information
    • Permanent link
    • What links here
File:Test Template Info-Icon - Version (2).svg Template documentation[view] [edit] [history] [purge]

This template tests whether the first unnamed parameter is not an empty string and returns it if it is not empty. 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.

Contents

  • 1 Usage
    • 1.1 Prefix and suffix
      • 1.1.1 Infobox field with microformat
      • 1.1.2 Table
  • 2 See also

Usage

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

Prefix and suffix

Infobox field with microformat

A value in an infobox can be designed to be wrapped in a microformat if the wikidata call is not empty:

{{if then show | {{#invoke:WikidataIB | getValue | rank=best |P19 |name=birth_place |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{{fetchwikidata|}}} |noicon={{{noicon|}}} | {{{birth_place|}}} }} || <span class="birthplace"> | </span>}}
If there is a local parameter supplied in the article (e.g. |birth_place=London), the code will return <span class="birthplace">London</span>.
If there is no local parameter it will attempt to fetch a value for Lua error in Module:Wd at line 196: attempt to index field 'wikibase' (a nil value). (P19) from Wikidata.
If that has a value, such as "New York", the code will return <span class="birthplace">New York</span>.
If there is no value returned from Wikidata, the code returns nothing.

Table

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

Lua error in Module:Wd at line 196: attempt to index field 'wikibase' (a nil value). (P26) for Lua error in Module:Wd at line 196: 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:Wd at line 196: attempt to index field 'wikibase' (a nil value). (P26) for Lua error in Module:Wd at line 196: 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

See also

{{#invoke:Wikidata Infobox|ifThenShow}}
Lua-based alternative that does basically the same thing
Template:Ifnoteq then show
tests whether the first unnamed parameter is equal to the second unnamed parameter and returns the third unnamed parameter if it does. Otherwise it returns the first unnamed parameter. This is useful when the first parameter is a {{#invoke: of a Lua module that returns a value for which a specific exception is required.
Template:If then wikilink
tests whether the first unnamed parameter is not an empty string and if it isn't, it returns the parameter formatted as piped wiki-link using an optional namespace prefix.
Template:Formatter link
takes an external identifier code as |code= and uses a formatter url as |url= to construct a link to the external resource, which uses the code as display.
Template:Emptyor
tests a piece of text to ascertain whether it's effectively empty or contains some text. If the unnamed parameter consists only of html tags, punctuation (e.g. Wiki-markup) and whitespace, then Emptyor returns nothing; otherwise it returns the parameter unchanged. Wrapper for p.emptyor function.
The above documentation is transcluded from Template:If then show/doc. (edit | history)
Editors can experiment in this template's sandbox (create | mirror) and testcases (create) pages.
Add categories to the /doc subpage. Subpages of this template.
Retrieved from "https://moasspedia.org/w/index.php?title=Template:If_then_show&oldid=19167"
Categories:
  • Pages with script errors
  • Pages with broken file links
  • If-then-else templates
Last edited on 19 March 2022, at 21:04

MOASSpedia

Content is available under Creative Commons Attribution-ShareAlike unless otherwise noted.
  • This page was last edited on 19 March 2022, at 21:04.
  • Content is available under Creative Commons Attribution-ShareAlike unless otherwise noted.
  • Privacy policy
  • About MOASSpedia
  • Disclaimers
  • Desktop