Difference between revisions of "Template:Localized link"
[unchecked revision] | [unchecked revision] |
m (rv; ++ {{IfTranslation}} is not needed) |
m (1 revision imported) |
||
(13 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | [[Special:MyLanguage/{{{1}}}|{{{2|{{#ifexist:Translations:{{{1}}}/Page display title/en|{{ {{TNTN|Translations:{{{1}}}/Page_display_title}} }}|{{{1}}}}}}}}]]<noinclude> | + | <noinclude> |
− | {{documentation}} | + | <languages/> |
+ | </noinclude><!-- | ||
+ | -->{{#ifeq:{{FULLPAGENAME:{{{1}}}}}|{{FULLPAGENAME:{{translatable}}}}<!--self link (including translation pages)--> | ||
+ | |<b> | ||
+ | }}[[Special:MyLanguage/{{{1}}}|{{#if:{{{2|}}}|{{{2}}}|{{{2|{{#ifexist:Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page display title/{{pagelang2}}<!--if the source page, pagelang2 returns en--> | ||
+ | |{{#if:{{{nsp|}}} | ||
+ | |{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }} | ||
+ | |{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} | ||
+ | }} | ||
+ | <!--if the translation page does not exist (or called from the source page), output as is--> | ||
+ | |{{#if:{{{nsp|}}} | ||
+ | |{{PAGENAME:{{{1}}}}} | ||
+ | |{{{1}}} | ||
+ | }} | ||
+ | }}}}}}}]]{{#ifeq:{{FULLPAGENAME:{{{1}}}}}|{{FULLPAGENAME:{{translatable}}}}<!--self link (including translation pages)--> | ||
+ | |</b> | ||
+ | }}<span style="display:none">[[:{{{1}}}| ]]</span><!-- T63547 --><noinclude> | ||
+ | {{documentation|content= | ||
+ | |||
+ | {{tsh|ll|LL}} | ||
+ | {{High-use|35000}} | ||
+ | |||
+ | <translate> | ||
+ | == Purpose == <!--T:1--> | ||
+ | </translate> | ||
+ | <translate><!--T:8--> This helper template can be used to link to [[<tvar name=1>Special:LanguageStats</tvar>|translatable pages]] in the user's language.</translate> | ||
+ | <translate><!--T:9--> It uses the special page prefix <tvar name=1><code>Special:MyLanguage/</code></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> | ||
+ | <!--T:10--> | ||
+ | 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 == <!--T:2--> | ||
+ | </translate> | ||
+ | {{Localized link/doc}} | ||
+ | |||
+ | <translate> | ||
+ | <!--T:11--> | ||
+ | If "<tvar name=1><code>nsp</code></tvar>" parameter is not defined, as link text displays the full pagename (including namespace); otherwise — if "<tvar name=1><code>nsp</code></tvar>" parameter is defined by any value — link text displays the short pagename, without namespace. | ||
+ | |||
+ | === Examples of simple usage === <!--T:3--> | ||
+ | </translate> | ||
+ | {{(}}{{!}} class="wikitable" | ||
+ | {{!}}- | ||
+ | ! <translate><!--T:4--> Use</translate> | ||
+ | ! <translate><!--T:5--> Becomes</translate> | ||
+ | {{!}}- | ||
+ | {{!}} {{Tlx|ll|Communication}} | ||
+ | {{!}} {{ll|Communication}} | ||
+ | {{!}}- | ||
+ | {{!}} {{Tlx|ll|Communication|コミュニケーション}} | ||
+ | {{!}} {{ll|Communication|コミュニケーション}} | ||
+ | {{!}}- | ||
+ | {{!}} {{Tlx|ll|Project:About}} | ||
+ | {{!}} {{ll|Project:About}} | ||
+ | {{!}}- | ||
+ | {{!}} {{Tlx|ll|Project:About|nsp{{=}}0}} | ||
+ | {{!}} {{ll|Project:About|nsp=0}} | ||
+ | {{!}}{{)}} | ||
+ | |||
+ | <translate> | ||
+ | == Usage in translatable pages == <!--T:6--> | ||
+ | |||
+ | <!--T:12--> | ||
+ | On pages prepared for translation with the <tvar name=1>{{ll|Extension:Translate|nsp=0}}</tvar> extension, this template may be used in three ways. | ||
+ | </translate> | ||
+ | |||
+ | # <translate><!--T:13--> Should better be substitute this template, and then the wikilink target embedded in a <tvar name=1>{{#tag:source|{{^(}}tvar name=id{{)^}}...{{^(}}/tvar{{)^}}|lang=html|inline=1}}</tvar>, separately from the translatable displayed text of the link.</translate> | ||
+ | #: <translate><!--T:22--> As example, instead <tvar name=1><code><nowiki>{{ll|Communication|About communication}}</nowiki></code></tvar>, translation markup in translatable page will be <tvar name=2>{{#tag:source|[[{{^(}}tvar name=1{{)^}}Special:MyLanguage/Communication{{^(}}/tvar{{)^}}|About communication]]|lang=html|inline=1}}</tvar>.</translate> | ||
+ | # <translate><!--T:14--> Alternatively, may be exclude this code from translatable section.</translate> | ||
+ | #: <translate><!--T:23--> As example, for <tvar name=1><code>some text <nowiki>{{ll|Communication|About communication}}</nowiki> some text</code></tvar>, translation markup in translatable page will be:</translate> | ||
+ | #: {{#tag:source|{{^(}}translate{{)^}}some text{{^(}}/translate{{)^}} {{((}}ll{{!}}Communication{{!}}2={{^(}}translate{{)^}}About communication{{^(}}/translate{{)^}}{{))}} {{^(}}translate{{)^}}some text{{^(}}/translate{{)^}}|lang=html|inline=1}} | ||
+ | #: <translate><!--T:15--> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate> | ||
+ | # <translate><!--T:16--> If link text does not have to be different from the name of landing page, will be better to embed all this code into <tvar name=1>{{tag|tvar|open}}</tvar>.</translate> | ||
+ | #: <translate><!--T:24--> As example, instead <tvar name=1>{{Tlx|ll|Communication}}</tvar>, translation markup in translatable page will be <tvar name=2>{{#tag:source|{{^(}}tvar name=1{{)^}}{{((}}ll{{!}}Communication{{))}}{{^(}}/tvar{{)^}}|lang=html|inline=1}}</tvar>.</translate> | ||
+ | |||
+ | <translate> | ||
+ | == See also == <!--T:7--> | ||
+ | </translate> | ||
+ | * [[Template:Localized link/messagedoc]] — <translate><!--T:17--> should be used for message documentation in translatable pages that use this template.</translate> | ||
+ | * {{tl|Translatable template}} - <translate><!--T:18--> alias <tvar name=1>{{tl|TNT}}</tvar> or <tvar name=2>{{tl|tnt}}</tvar></translate> | ||
+ | * {{tl|Translatable template name}} - <translate><!--T:19--> alias <tvar name=1>{{tl|TNTN}}</tvar> or <tvar name=2>{{tl|tntn}}</tvar></translate> | ||
+ | * {{tl|Page language link}} - <translate><!--T:20--> alias <tvar name=1>{{tl|pll}}</tvar></translate> - <translate><!--T:21--> add a link from a translatable page to another translatable page in the same language</translate> | ||
+ | |||
+ | <source style="display:none"></source> | ||
+ | }} | ||
+ | [[Category:Internationalization templates]] | ||
</noinclude> | </noinclude> |
Latest revision as of 19:00, 9 December 2021
<languages/> [[Special:MyLanguage/{{{1}}}|{{{1}}}]]
<templatestyles src="Module:Documentation/styles.css"></templatestyles>Template:Tsh Lua error in package.lua at line 80: module 'Module:Transclusion_count' not found.
<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 "<tvar name=1>nsp
</tvar>" parameter is not defined, as link text displays the full pagename (including namespace); otherwise — if "<tvar name=1>nsp
</tvar>" parameter is defined by any value — link text displays the short pagename, without namespace.
Examples of simple usage
</translate>
Template:(| class="wikitable"
|-
! <translate> Use</translate>
! <translate> Becomes</translate>
|-
| {{ll|Communication}}
| Communication
|-
| {{ll|Communication|コミュニケーション}}
| コミュニケーション
|-
| {{ll|Project:About}}
| Project:About
|-
| {{ll|Project:About|nsp=0}}
| About
|Template:)
<translate>
Usage in translatable pages
On pages prepared for translation with the <tvar name=1>Extension:Translate </tvar> extension, this template may be used in three ways. </translate>
- <translate> Should better be substitute this template, and then the wikilink target embedded in a <tvar name=1><source lang="html" inline="1">Template:^(tvar name=idTemplate:)^...Template:^(/tvarTemplate:)^</source></tvar>, separately from the translatable displayed text of the link.</translate>
- <translate> As example, instead <tvar name=1>
{{ll|Communication|About communication}}
</tvar>, translation markup in translatable page will be <tvar name=2><source lang="html" inline="1">[[Template:^(tvar name=1Template:)^Special:MyLanguage/CommunicationTemplate:^(/tvarTemplate:)^|About communication]]</source></tvar>.</translate>
- <translate> As example, instead <tvar name=1>
- <translate> Alternatively, may be exclude this code from translatable section.</translate>
- <translate> As example, for <tvar name=1>
some text {{ll|Communication|About communication}} some text
</tvar>, translation markup in translatable page will be:</translate> - <source lang="html" inline="1">Template:^(translateTemplate:)^some textTemplate:^(/translateTemplate:)^ Template:((ll|Communication|2=Template:^(translateTemplate:)^About communicationTemplate:^(/translateTemplate:)^Template:)) Template:^(translateTemplate:)^some textTemplate:^(/translateTemplate:)^</source>
- <translate> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate>
- <translate> As example, for <tvar name=1>
- <translate> If link text does not have to be different from the name of landing page, will be better to embed all this code into <tvar name=1>Template:Tag</tvar>.</translate>
- <translate> As example, instead <tvar name=1>
{{ll|Communication}}
</tvar>, translation markup in translatable page will be <tvar name=2><source lang="html" inline="1">Template:^(tvar name=1Template:)^Template:((ll|CommunicationTemplate:))Template:^(/tvarTemplate:)^</source></tvar>.</translate>
- <translate> As example, instead <tvar name=1>
<translate>
See also
</translate>
- Template:Localized link/messagedoc — <translate> should be used for message documentation in translatable pages that use this template.</translate>
- {{Translatable template}} - <translate> alias <tvar name=1>{{TNT}}</tvar> or <tvar name=2>{{tnt}}</tvar></translate>
- {{Translatable template name}} - <translate> alias <tvar name=1>{{TNTN}}</tvar> or <tvar name=2>{{tntn}}</tvar></translate>
- {{Page language link}} - <translate> alias <tvar name=1>{{pll}}</tvar></translate> - <translate> add a link from a translatable page to another translatable page in the same language</translate>
<source style="display:none"></source>