Template:Infobox place/people: Difference between revisions

From stencil.wiki
No edit summary
No edit summary
Line 1: Line 1:
<includeonly>{{#arraymaptemplate:{{#ask:[[-Has subobject::{{PAGENAME}}]][[Category:People]][[With role::true]]|?Has name|mainlabel=-|headers=hide|format=plainlist}}|Infobox place/people/person|,|}}
<noinclude>
This is a helper template for [[Template:Infobox place]], it sorts and displays the row(s) needed to display the people listed for a place (which are stored as subobjects). It takes no parameters, and uses semantic queries on <code><nowiki>{{PAGENAME}}</nowiki></code> to gather and display the list.
 
== Behavior ==
 
Multiple people can be listed for a place, and each has an optional [[Property:Has role]]. The list displays in two sections:
 
# People who have assigned roles are displayed first, one per role, with the role used as a label. Roles are not unique, people could be assigned the same role, in which case they will ''each'' be displayed as a row with that label (e.g. two people listed with the role of "Co-founder").
# People who have no assigned label are grouped together into one row with "People" as the label.
 
Additionally, each person has an optional URL (for a personal site or profile) which turns their name into an external link.
 
The handling of each individual person + their link (and whether they are wrapped in a <code><nowiki><td/></nowiki></code> or <code><nowiki><div/></nowiki></code> is managed in a subtemplate: [[Template:Infobox place/people/person]]
 
</noinclude><includeonly>{{#arraymaptemplate:{{#ask:[[-Has subobject::{{PAGENAME}}]][[Category:People]][[With role::true]]|?Has name|mainlabel=-|headers=hide|format=plainlist}}|Infobox place/people/person|,|}}
{{#ifexpr:{{#ask:[[-Has subobject::{{PAGENAME}}]][[Category:People]][[With role::false]]|format=count}}>0|<tr><th>People</th><td>{{#arraymaptemplate:{{#ask:[[-Has subobject::{{PAGENAME}}]][[Category:People]][[With role::false]]|?Has name|mainlabel=-|headers=hide|format=plainlist}}|Infobox place/people/person|,|}}</td></tr>}}</includeonly>
{{#ifexpr:{{#ask:[[-Has subobject::{{PAGENAME}}]][[Category:People]][[With role::false]]|format=count}}>0|<tr><th>People</th><td>{{#arraymaptemplate:{{#ask:[[-Has subobject::{{PAGENAME}}]][[Category:People]][[With role::false]]|?Has name|mainlabel=-|headers=hide|format=plainlist}}|Infobox place/people/person|,|}}</td></tr>}}</includeonly>

Revision as of 00:50, 17 December 2024

This is a helper template for Template:Infobox place, it sorts and displays the row(s) needed to display the people listed for a place (which are stored as subobjects). It takes no parameters, and uses semantic queries on {{PAGENAME}} to gather and display the list.

Behavior

Multiple people can be listed for a place, and each has an optional Property:Has role. The list displays in two sections:

  1. People who have assigned roles are displayed first, one per role, with the role used as a label. Roles are not unique, people could be assigned the same role, in which case they will each be displayed as a row with that label (e.g. two people listed with the role of "Co-founder").
  2. People who have no assigned label are grouped together into one row with "People" as the label.

Additionally, each person has an optional URL (for a personal site or profile) which turns their name into an external link.

The handling of each individual person + their link (and whether they are wrapped in a <td/> or <div/> is managed in a subtemplate: Template:Infobox place/people/person