Jump to content

Teamplaid:Item/documentation

O Wiktionary

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.

Usage

[deasaich]

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: Teamplaid:Automarkup

Constructs available to recipient templates

[deasaich]

Get a component of an item

[deasaich]

See Teamplaid:Component.

Format an item using a template

[deasaich]

See Teamplaid:Format item.

Format each item using a template

[deasaich]

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

[deasaich]

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

[deasaich]