Template:Localized link
<languages/> {{#ifeq:|
|
}}[[Special:MyLanguage/{{{1}}}|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:|:}}/Page display title/en
|{{#ifexpr:{{#if:|1|0}} and !=0
|{{#ifeq:en|en
|
|{{#if:
|{{#ifeq:Script error: No such module "string".|0
|
| Script error: No such module "string".
}}
|{{#if:{{ Template:TNTN | nsp = 0 }}
|{{ Template:TNTN | nsp = 0 }}
|{{{1}}}
}}
}}
}}
|{{ Template:TNTN }}
}}
|{{#if:
|{{#if:
|
|{{{1}}}
}}
|{{{1}}}
}}
}}}}]]{{#ifeq:|
|
}} Lua error: Module:TNT:172: '''Missing JsonConfig extension, or not properly configured; Cannot load https://commons.wikimedia.org/wiki/Data:I18n/Documentation.tab. See https://www.mediawiki.org/wiki/Extension:JsonConfig#Supporting_Wikimedia_templates'''.{{#if:Template:Tsh Template:High-use
<translate>
Purpose
</translate>
<translate> This helper template can be used to link to [[<tvar name=1>Special:LanguageStats</tvar>|translatable pages]] in the user's language.</translate>
<translate> It uses the special page prefix <tvar name=1>Special:MyLanguage/</tvar>, which checks if there is a translated version of a page in the user's language, and links to it if there is one, and links to a fallback language where available, or the default wiki language version (English in MediaWiki) if there isn't.</translate>
<translate> It should be used in translated pages, so that they link to the right page even if there is no translated page in that language.
Usage
</translate> Template:Localized link/doc
<translate>
If the "<tvar name=1>nsp</tvar>" parameter is not defined, as link text this displays the full pagename (including the namespace); otherwise — if the "<tvar name=1>nsp</tvar>" parameter is defined to any value the link text displays the short pagename (without the namespace).
Examples of simple usage
</translate> Template:(| class="wikitable" |- ! <translate> Use</translate> ! <translate> Becomes</translate> |- | Template:Tlx | {{#ifeq:Communication|
|
}}[[Special:MyLanguage/Communication|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:|:}}Communication/Page display title/en
|{{#ifexpr:{{#if:|1|0}} and 0!=0
|{{#ifeq:en|en
|Communication
|{{#if:
|{{#ifeq:Script error: No such module "string".|0
|
| Script error: No such module "string".
}}
|{{#if:{{ Template:TNTN | nsp = 0 }}
|{{ Template:TNTN | nsp = 0 }}
|Communication
}}
}}
}}
|{{ Template:TNTN }}
}}
|{{#if:
|{{#if:Communication
|Communication
|Communication
}}
|Communication
}}
}}}}]]{{#ifeq:Communication|
|
}} |- | Template:Tlx | {{#ifeq:Communication|
|
}}{{#if:コミュニケーション |コミュニケーション |コミュニケーション}}{{#ifeq:Communication|
|
}} |- | Template:Tlx | {{#ifeq:OESI Wiki:About|
|
}}[[Special:MyLanguage/Project:About|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:OESI Wiki|OESI Wiki:}}About/Page display title/en
|{{#ifexpr:{{#if:|1|0}} and 4!=0
|{{#ifeq:en|en
|About
|{{#if:
|{{#ifeq:Script error: No such module "string".|0
|
| Script error: No such module "string".
}}
|{{#if:{{ Template:TNTN | nsp = 0 }}
|{{ Template:TNTN | nsp = 0 }}
|Project:About
}}
}}
}}
|{{ Template:TNTN }}
}}
|{{#if:
|{{#if:About
|About
|Project:About
}}
|Project:About
}}
}}}}]]{{#ifeq:OESI Wiki:About|
|
}} |- | Template:Tlx | {{#ifeq:OESI Wiki:About|
|
}}[[Special:MyLanguage/Project:About|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:OESI Wiki|OESI Wiki:}}About/Page display title/en
|{{#ifexpr:{{#if:0|1|0}} and 4!=0
|{{#ifeq:en|en
|About
|{{#if:
|{{#ifeq:Script error: No such module "string".|0
|
| Script error: No such module "string".
}}
|{{#if:{{ Template:TNTN | nsp = 0 }}
|{{ Template:TNTN | nsp = 0 }}
|Project:About
}}
}}
}}
|{{ Template:TNTN }}
}}
|{{#if:0
|{{#if:About
|About
|Project:About
}}
|Project:About
}}
}}}}]]{{#ifeq:OESI Wiki:About|
|
}} |Template:)
<translate>
Usage in translatable pages
On pages prepared for translation with the <tvar name=1>{{#ifeq:Extension:Translate|
|
}}[[Special:MyLanguage/Extension:Translate|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:|:}}Extension:Translate/Page display title/en
|{{#ifexpr:{{#if:0|1|0}} and 0!=0
|{{#ifeq:en|en
|Extension:Translate
|{{#if:
|{{#ifeq:Script error: No such module "string".|0
|
| Script error: No such module "string".
}}
|{{#if:{{ Template:TNTN | nsp = 0 }}
|{{ Template:TNTN | nsp = 0 }}
|Extension:Translate
}}
}}
}}
|{{ Template:TNTN }}
}}
|{{#if:0
|{{#if:Extension:Translate
|Extension:Translate
|Extension:Translate
}}
|Extension:Translate
}}
}}}}]]{{#ifeq:Extension:Translate|
|
}}</tvar> extension, this template may be used in three ways. </translate>
- <translate> Substitute this template, then embed the wikilink target in a <tvar name=1><syntaxhighlight lang="html" inline="1">Template:^(tvar name=idTemplate:)^...Template:^(/tvarTemplate:)^</syntaxhighlight></tvar>, separate from the translatable text of the link.</translate>
- <translate> For example, instead of <tvar name=1>
{{ll|Communication|About communication}}</tvar>, the translation markup in the translatable page will be <tvar name=2><syntaxhighlight lang="html" inline="1">[[Template:^(tvar name=1Template:)^Special:MyLanguage/CommunicationTemplate:^(/tvarTemplate:)^|About communication]]</syntaxhighlight></tvar>.</translate>
- <translate> For example, instead of <tvar name=1>
- <translate> Alternatively, exclude this code from the translatable section.</translate>
- <translate> For example, for <tvar name=1>
some text {{ll|Communication|About communication}} some text</tvar>, the translation markup in the translatable page will be:</translate> - <syntaxhighlight lang="html" inline="1">Template:^(translateTemplate:)^some textTemplate:^(/translateTemplate:)^ Template:((ll|Communication|2=Template:^(translateTemplate:)^About communicationTemplate:^(/translateTemplate:)^Template:)) Template:^(translateTemplate:)^some textTemplate:^(/translateTemplate:)^</syntaxhighlight>
- <translate> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate>
- <translate> For example, for <tvar name=1>
- <translate> If link text is the same as the name of the target page, all of the code could also be embedded into <tvar name=1>Template:Tag</tvar>.</translate>
- <translate> For example, instead of <tvar name=1>Template:Tlx</tvar>, the wikicode in the translatable page will be <tvar name=2><syntaxhighlight lang="html" inline="1">Template:^(tvar name=1Template:)^Template:((ll|CommunicationTemplate:))Template:^(/tvarTemplate:)^</syntaxhighlight></tvar>.</translate>
Test cases
Template:Localized link/testcases
<translate>
See also
</translate>
- Template:Localized link/messagedoc — <translate> should be used for message documentation in translatable pages that use this template.</translate>
- Template:Tl - <translate> alias <tvar name=1>Template:Tl</tvar> or <tvar name=2>Template:Tl</tvar></translate>
- Template:Tl - <translate> alias <tvar name=1>Template:Tl</tvar> or <tvar name=2>Template:Tl</tvar></translate>
- Template:Tl - <translate> alias <tvar name=1>Template:Tl</tvar></translate> - <translate> add a link from a translatable page to another translatable page in the same language</translate>|
[[Category:Template documentation pages{{#translation:}}]] }}