Difference between revisions of "Template:Emptyor/sandbox"

From blackwiki
Jump to navigation Jump to search
imported>Pppery
(Template:MultiReplace instead)
imported>Pppery
(<identical change was made by RexxS to module>)
 
Line 1: Line 1:
{{if||{{MultiReplace|{{{1}}}|plain=no|</?%w*>||%p||{{=}}|}}|{{{1}}}}}<noinclude>
+
{{if||{{MultiReplace|{{{1}}}|plain=no|<[^>]*>||%p||{{=}}|}}|{{{1}}}}}<noinclude>
 
{{Documentation}}
 
{{Documentation}}
 
</noinclude>
 
</noinclude>

Latest revision as of 04:08, 7 January 2018

{{{1}}}

Template documentation[view] [edit] [history] [purge]

Description

Emptyor tests a piece of text to ascertain whether it's effectively empty or contains some text. It is a wrapper for the function emptyor() in Module:WikidataIB.

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.

In designing a Wikidata-enabled infobox, we may need to apply markup, such as italics, to a value fetched from Wikidata. However, if that value is blank, then the markup would normally produce a label with a blank entry for its data. Using this template will suppress such rows when nothing is returned from Wikidata.

Usage

Example:

label99 = This Field
data99  = 
	{{emptyor
		| <i>{{#invoke:WikidataIB |getValue |P666 |name=thisfield |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{{fetchwikidata|}}} |onlysourced={{{onlysourced|}}} |noicon={{{noicon|}}} |list={{{list|}}} | {{{thisfield|}}} }}</i>
	}}

If the getValue call returns anything, the infobox will show a row labelled "This field", with the value returned in italics.

If the getValue call returns nothing, the infobox will not show the row "This field".