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

Template:Item

Template Discussion
  • Language
  • Watch
  • History
  • Edit
    • Page information
    • Permanent link
    • What links here
Template documentation[view] [edit] [history] [purge]
This template uses Lua:
  • Module:Item

This template packs structured data into a compact item, which can be passed as a parameter to another template. This allows to pass multiple structured items to that template, which can iterate over the items and extract data from them.

Contents

  • 1 Usage
  • 2 Constructs available to recipient templates
    • 2.1 Get a component of an item
    • 2.2 Format an item using a template
    • 2.3 Format each item using a template
    • 2.4 Gather given parameter from all items
  • 3 See also

Usage

The structured data item contains all parameters (both numbered ones and named ones) passed to the {{Item}} template. For example, {{Item|Alice|Bob|best=Eve}} creates an item with components 1=Alice, 2=Bob, best=Eve.

Multiple items will be passed to an example recipient template {{User:Petr Matas/sandbox/Pets}} like this:

Markup Renders as
{{User:Petr Matas/sandbox/Pets|owner=Bob
| {{Item|name=Tom|animal=cat|legs=4}}
| {{Item|name=Jerry|animal=mouse|legs=4}}
| {{Item|name=Tweety|animal=bird|legs=2}}
}}

User:Petr Matas/sandbox/Pets

Constructs available to recipient templates

Get a component of an item

See Template:Component.

Format an item using a template

See Template:Format item.

Format each item using a template

In the recipient template, use:

{{#invoke:Item|each|template=TransformationTemplate|Separator|Prefix|Suffix|...}}

This transforms all items using a given template. TransformationTemplate is called for each item with the parameters that the item has been created with, plus any additional parameters passed to #invoke (see {{Format item}} for details). The transformed items are separated with Separator and surrounded with Prefix and Suffix (whitespace is not stripped from these three optional parameters).

The template {{User:Petr Matas/sandbox/Pets}} from the example produces the list of pets using the following code (note the use of newline as a Separator and * as a Prefix to produce list items):

{{#invoke:Item|each|template=Show pet|
|*}}

Gather given parameter from all items

In the recipient template, use {{#invoke:Item|gather|parameter=ParameterName|template=TransformationTemplate}} to gather the given parameter from all items. TransformationTemplate will be called once and the gathered parameters (one parameter from each item) will be passed to it.

The template {{User:Petr Matas/sandbox/Pets}} from the example produces the total number of legs using {{#invoke:Item|gather|parameter=legs|template=Sum}}.

See also

  • {{For loop}}
The above documentation is transcluded from Template:Item/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:Item&oldid=20749"
Categories:
  • Lua-based templates
  • Wikipedia formatting and function templates
Last edited on 7 December 2018, at 03:48

MOASSpedia

Content is available under Creative Commons Attribution-ShareAlike unless otherwise noted.
  • This page was last edited on 7 December 2018, at 03:48.
  • Content is available under Creative Commons Attribution-ShareAlike unless otherwise noted.
  • Privacy policy
  • About MOASSpedia
  • Disclaimers
  • Desktop