Difference between revisions of "Template:Infobox/Doc"
| Line 11: | Line 11: | ||
... | ... | ||
<tr> | <tr> | ||
<td class=" | <td class="infobox-data-title">...</td> | ||
<td class=" | <td class="infobox-data">...</td> | ||
</tr> | </tr> | ||
... | ... | ||
| Line 24: | Line 24: | ||
|- | |- | ||
... | ... | ||
|class=" | |class="infobox-data-title"| ... | ||
|... | |... | ||
|- | |- | ||
| Line 43: | Line 43: | ||
<code>file</code> - for an image file | <code>file</code> - for an image file | ||
* In the code: <code><nowiki>{{#if: {{{file|}}}|<tr><td | * In the code: <code><nowiki>{{#if: {{{file|}}}|<tr><td colspan="2">[[File:{{{file|}}}{{!}}250px{{!}}center]]</td></tr>}}</nowiki></code> | ||
** <code>#if:</code> once again means it's optional, but in this case there is no default value, in other words, if no image is provided there will nothing; otherwise function adds new row in the table, which will contain image | ** <code>#if:</code> once again means it's optional, but in this case there is no default value, in other words, if no image is provided there will nothing; otherwise function adds new row in the table, which will contain image | ||
** [[mw:Help:Images|wiki mark up for images]] sets how image will be formatted inside the infobox, in this case it has fixed width - <code>250px</code>, and align - <code>center</code>, but these values can be set up as another pair of parameters | ** [[mw:Help:Images|wiki mark up for images]] sets how image will be formatted inside the infobox, in this case it has fixed width - <code>250px</code>, and align - <code>center</code>, but these values can be set up as another pair of parameters | ||
| Line 59: | Line 59: | ||
<code>prm1</code> - second data parameter, with "Parameter 2" title | <code>prm1</code> - second data parameter, with "Parameter 2" title | ||
* In the code:<br><code><nowiki>{{#if: {{{prm2|}}}|<tr> | * In the code:<br><code><nowiki>{{#if: {{{prm2|}}}|<tr> | ||
<td class=" | <td class="infobox-data-title">Parameter 2</td> | ||
<td class=" | <td class="infobox-data">{{{prm2}}}</td> | ||
</tr>}}</nowiki></code> | </tr>}}</nowiki></code> | ||
** <code>#if:</code> again means it's optional, but if filled it will add a row with two columns | ** <code>#if:</code> again means it's optional, but if filled it will add a row with two columns | ||
| Line 69: | Line 69: | ||
* and several '''classes''' | * and several '''classes''' | ||
** <code>infobox</code> for entire table - this wiki already has such class in [[MediaWiki:Common.css|Common.css]] page; most notably it puts the box into right side of the page and gives it background color and border | ** <code>infobox</code> for entire table - this wiki already has such class in [[MediaWiki:Common.css|Common.css]] page; most notably it puts the box into right side of the page and gives it background color and border | ||
** <code> | ** <code>infobox-data-title</code> - for column with data titles; will be a custom class in [[Template:Classic infobox/styles.css]] page - for educational purposes it will brighter than usual Wikipedia style | ||
** <code> | ** <code>infobox-data</code> - for second column, with data values; same as previous | ||
===Categories=== | ===Categories=== | ||
| Line 82: | Line 82: | ||
To use infobox on another page, this code must be used: | To use infobox on another page, this code must be used: | ||
<pre> | <pre> | ||
{{ | {{infobox | ||
|title = | |title = | ||
|file = | |file = | ||
| Line 88: | Line 88: | ||
|prm1 = | |prm1 = | ||
|prm2 = | |prm2 = | ||
}}</pre>{{ | }}</pre> | ||
Per break down above, the only obligatory parameter here <code><nowiki>{{{prm1}}}</nowiki></code>. | |||
If everything is left empty, the output will be: | |||
{{infobox | |||
|title = | |title = | ||
|file = | |file = | ||
| Line 94: | Line 100: | ||
|prm1 = | |prm1 = | ||
|prm2 = }} | |prm2 = }} | ||
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | | | <includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | | | ||
[[Category:Infobox templates| ]]}}</includeonly> | [[Category:Infobox templates| ]]}}</includeonly> | ||
Revision as of 07:13, 29 January 2022
This is an example of infobox template - a simple infobox coded as table. It was copied from https://template.miraheze.org/wiki/Template:Classic_infobox
Overview
Table
Infobox is a table. There is two ways to build tables on wiki spaces - using HTML mark up (tags) or using wiki mark up.
Here HTML tags were used:
<table class="infobox">
<tr><td colspan="2" style="text-align: center; font-size:140%;">...</td></tr>
...
<tr>
<td class="infobox-data-title">...</td>
<td class="infobox-data">...</td>
</tr>
...
</table>
Wiki mark up variant:
{| class="infobox"
|colspan="2" style="text-align: center; font-size:140%;"| ...
|-
...
|class="infobox-data-title"| ...
|...
|-
...
|}
For more information about wiki tables see: Help:Tables.
Parameters
In all templates parameters are placed in the code with triple curly braces: {{{|}}}. Parameters can have a code name - {{{<codename>|}}}, which can be placed in any order on actual page, as long as code names are written correctly. Without code names numbers should be used instead - {{{1|}}}, and on another page template will look at the order of values filled in it.
This example infobox has 5 parameters:
title - used to force custom text in a header of infobox
- In the code it looks like this:
{{#if: {{{title|}}}|{{{title|}}}|{{PAGENAME}}}}- the use of
#if:parser function means that parameter is optional and won't work if it's not filled {{PAGENAME}}magic word in the function means that by default the template uses title of the page it's used on
- the use of
file - for an image file
- In the code:
{{#if: {{{file|}}}|<tr><td colspan="2">[[File:{{{file|}}}{{!}}250px{{!}}center]]</td></tr>}}#if:once again means it's optional, but in this case there is no default value, in other words, if no image is provided there will nothing; otherwise function adds new row in the table, which will contain image- wiki mark up for images sets how image will be formatted inside the infobox, in this case it has fixed width -
250px, and align -center, but these values can be set up as another pair of parameters - only name of the file with format is needed
caption - caption under image
- In the code:
{{#if: {{{caption|}}}|<tr><td colspan="2" style="text-align: center;">''{{{caption|}}}''</td></tr>}}#if:- optional, without default value, otherwise adds new row in the table- there text formatting:
style="text-align: center;"- for align, and''...''- to give italics to caption
prm1 - first actual data parameter, which has visible title in the infobox - "Parameter 1"
- In the code:
{{{prm1}}}- it's very simple and there is no function - if left empty, infobox will show "Parameter 1" title, but there will be nothing to show in another column
prm1 - second data parameter, with "Parameter 2" title
- In the code:
{{#if: {{{prm2|}}}|<tr> <td class="infobox-data-title">Parameter 2</td> <td class="infobox-data">{{{prm2}}}</td> </tr>}}#if:again means it's optional, but if filled it will add a row with two columns
Styles
The table uses styles which determinate its look. Here we have:
style="", most notably in the header- and several classes
infoboxfor entire table - this wiki already has such class in Common.css page; most notably it puts the box into right side of the page and gives it background color and borderinfobox-data-title- for column with data titles; will be a custom class in Template:Classic infobox/styles.css page - for educational purposes it will brighter than usual Wikipedia styleinfobox-data- for second column, with data values; same as previous
Categories
With the aid of transclusion tags, infobox can place the page it's used on into a category (or several categories).
In case of this template, code:
{{#ifeq:{{NAMESPACE}}|Template|<!-- do nothing -->|[[Category:Some category]]}}
placed inside <includeonly> tag, will add the page into "Some category", unless the namespace of that page is "template" - hence "do nothing" commentary bit.
Usage
To use infobox on another page, this code must be used:
{{infobox
|title =
|file =
|caption =
|prm1 =
|prm2 =
}}
Per break down above, the only obligatory parameter here {{{prm1}}}.
If everything is left empty, the output will be:
| Infobox/Doc | |
| Parameter 1 | |