Template:PageRef/doc: Difference between revisionsGive feedback
Gammaton32 (talk | contribs) No edit summary |
Gammaton32 (talk | contribs) more details |
||
| (3 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
Note: It's recommended to use {{tl|HeroIcon}}, {{tl|AbilityIcon}}, or {{tl|ItemIcon}} instead, as those templates use [[Module:Icon]] and thus allow for more elaborate functions such as custom previews. PageRef should only be used for icons not covered in those templates, i.e. {{PageRef|Hidden King}} or {{PageRef|Shopkeeper}}. | |||
=Overview= | =Overview= | ||
Outputs an icon in svg and a link to the given localized page with an optional alternate display name. | Outputs an icon in svg and a link to the given localized page with an optional alternate display name. | ||
| Line 39: | Line 40: | ||
<code><nowiki>{{PageRef|My cool page|no_file=true}}</nowiki></code> | <code><nowiki>{{PageRef|My cool page|no_file=true}}</nowiki></code> | ||
{{PageRef|My cool page|no_file=true}} | {{PageRef|My cool page|no_file=true}} | ||
Using lang with to override language (e.g., Russian): | |||
<code><nowiki>{{PageRef|Lash|lang=/ru}}</nowiki></code> | |||
{{PageRef|Lash|lang=/ru}} | |||
=Parameters= | =Parameters= | ||
| Line 54: | Line 59: | ||
"type": "string" | "type": "string" | ||
}, | }, | ||
"no_file": { | |||
"label": "Do not use file", | |||
"description": "Do not use any file; also use this parameter when a file doesn't exist. Note that passing 'false' does not make it use a file, the parameter must then be omitted. This is for code efficiency", | |||
"required": false, | |||
"example": "true", | |||
"type": "string" | |||
}, | |||
"alt_name": { | "alt_name": { | ||
"label": "Alternate Name", | "label": "Alternate Name", | ||
| Line 84: | Line 89: | ||
"size": { | "size": { | ||
"label": "Size", | "label": "Size", | ||
"description": "Size of the icon link, defaulted to ' | "description": "Size of the icon link, defaulted to '20'px", | ||
"type": "number", | "type": "number", | ||
"required": false, | "required": false, | ||
"example": "50" | "example": "50" | ||
}, | |||
"lang": { | |||
"label": "Language", | |||
"description": "An optional language code to override the default language suffix in links (e.g., '/ru', '/zh-hans'). If omitted, `If_lang` template is used.", | |||
"example": "/ru", | |||
"type": "string" | |||
} | } | ||
}, | }, | ||
Latest revision as of 13:59, 14 May 2026
Note: It's recommended to use {{HeroIcon}}, {{AbilityIcon}}, or {{ItemIcon}} instead, as those templates use Module:Icon and thus allow for more elaborate functions such as custom previews. PageRef should only be used for icons not covered in those templates, i.e.
Hidden King or
Shopkeeper.
Overview
[edit source]Outputs an icon in svg and a link to the given localized page with an optional alternate display name.
Output will be:
<icon> <pagename>
- Both icon and page name will be hyperlinked to first parameter as the pagename
- Icon should be
[[File:<pagename>.svg]]
if the svg file exists, otherwise the .png.- The .svg should be both light and dark theme compatible (WIP)
- It's possible CSS may be used to automatically invert colors, precluding the need for the icon to be theme-compatible
- The .png should at least be default theme compatible (dark)
- If neither the .svg nor the .png exist, the icon will not be added
- The .svg should be both light and dark theme compatible (WIP)
- If the first parameter (name) is a hero name in english, it will automatically use the <hero>_MM.png file
- Otherwise, if the file name is different to the page name (do not use this in excess), the alt_file_name parameter will need to be used
The code for this template is at Module:PageRef. The module also lists exceptions for pages that currently do not have an icon uploaded, so that templates such as Template:VoiceLineCite do not use a broken image link. If an icon for those pages is added, they should be removed from the exceptions list.
Examples
[edit source]In its simplest form: {{PageRef|Lash}}
Lash
Example where the icon doesn't exist: {{PageRef|Shopkeeper}}
Shopkeeper
Using alt_name: {{PageRef|Lash|alt_name=Jacob}}
Jacob
Using alt_link (hover the link to see): {{PageRef|Lash|alt_link=Cold Front}}
Lash
Using alt_file_name: {{PageRef|Lash|alt_file_name=Cold Front}}
Lash
Using them all together, note that the first parameter is no longer used and therefore not needed:
{{PageRef|alt_name=Cold Front|alt_link=Cold Front|alt_file_name=Cold Front}}
Cold Front
Note: Instead of repeated use of alt_file_name, it is recommended to create a redirect at [[<first_parameter>.png]] to [[<alt_file_name>.png]], allowing the use of the simplest form of PageRef, making it much easier to reference in the future.
If a file does not exist, it will look like File:My cool page.pngMy cool page
To not use the file, use:
{{PageRef|My cool page|no_file=true}}
My cool page
Using lang with to override language (e.g., Russian):
{{PageRef|Lash|lang=/ru}}
Lash
Parameters
[edit source]No description.
| Parameter | Description | Type | Status | |
|---|---|---|---|---|
| Name | name 1 | The localized name of the page to link to, also used to determine the icon.
| String | required |
| Do not use file | no_file | Do not use any file; also use this parameter when a file doesn't exist. Note that passing 'false' does not make it use a file, the parameter must then be omitted. This is for code efficiency
| String | optional |
| Alternate Name | alt_name | An optional display name to show instead of the page name in the link.
| String | optional |
| Alternate Link | alt_link | An optional link to link to instead of the 1st parameter (name).
| String | optional |
| Alternate File Name | alt_file_name | An optional way to designate which file to include. Not needed if <first parameter> (name) is the same as the file name. File extension not needed, as it will try to prioritize the .svg first, otherwise use the .png.
| String | optional |
| Size | size | Size of the icon link, defaulted to '20'px
| Number | optional |
| Language | lang | An optional language code to override the default language suffix in links (e.g., '/ru', '/zh-hans'). If omitted, `If_lang` template is used.
| String | optional |