Template:PageRef/doc: Difference between revisions

No edit summary
more details
 
(7 intermediate revisions by 4 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 9: Line 10:
** The .svg should be both light and dark theme compatible (WIP)
** 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
***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 (light)
** The .png should at least be default theme compatible (dark)
** If neither the .svg nor the .png exist, the icon will not be added
** If neither the .svg nor the .png exist, the icon will not be added
* If the first parameter (name) is a hero name in english, it will automatically use the <hero>_MM.png file
* 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 <i>alt_file_name</i> parameter will need to be used
** Otherwise, if the file name is different to the page name (do not use this in excess), the <i>alt_file_name</i> 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=
=Examples=
In its simplest form: <code><nowiki>{{PageRef|Lash}}</nowiki></code> {{PageRef|Lash}}
In its simplest form: <code><nowiki>{{PageRef|Lash}}</nowiki></code> {{PageRef|Lash}}


Example where the icon doesn't exist: <code><nowiki>{{PageRef|Amber Hand}}</nowiki></code> {{PageRef|Amber Hand}}
Example where the icon doesn't exist: <code><nowiki>{{PageRef|Shopkeeper}}</nowiki></code> {{PageRef|Shopkeeper}}


Using alt_name: <code><nowiki>{{PageRef|Lash|alt_name=Jacob}}</nowiki></code> {{PageRef|Lash|alt_name=Jacob}}
Using alt_name: <code><nowiki>{{PageRef|Lash|alt_name=Jacob}}</nowiki></code> {{PageRef|Lash|alt_name=Jacob}}
Line 31: Line 33:


Note: Instead of repeated use of <i>alt_file_name</i>, it is recommended to create a redirect at <nowiki>[[<first_parameter>.png]]</nowiki> to <nowiki>[[<alt_file_name>.png]]</nowiki>, allowing the use of the simplest form of PageRef, making it much easier to reference in the future.
Note: Instead of repeated use of <i>alt_file_name</i>, it is recommended to create a redirect at <nowiki>[[<first_parameter>.png]]</nowiki> to <nowiki>[[<alt_file_name>.png]]</nowiki>, 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
{{PageRef|My cool page}}
To not use the file, use:
<code><nowiki>{{PageRef|My cool page|no_file=true}}</nowiki></code>
{{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=
<templatedata>
<templatedata>
{
{
Line 45: Line 57:
"1"
"1"
],
],
"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"
"type": "string"
},
},
Line 70: Line 89:
"size": {
"size": {
"label": "Size",
"label": "Size",
"description": "Size of the icon link, defaulted to '15'px",
"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"
}
}
},
},