Template:Localized link: Difference between revisions

From WWII Archives

m (Changed protection level for "Template:Localized link": Widely used template ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite)))
 
(update #tag:source instances too)
Line 1: Line 1:
<noinclude>{{heavily used template}}</noinclude>[[Special:MyLanguage/{{{1}}}|{{{2|{{#ifexist:Translations:{{{1}}}/Page display title/{{int:lang}}|{{Translations:{{{1}}}/Page display title/{{int:lang}}}}|{{{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/{{PAGELANGUAGE}}<!--if the source page, PAGELANGUAGE 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:syntaxhighlight|{{^(}}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:syntaxhighlight|[[{{^(}}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:syntaxhighlight|{{^(}}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:syntaxhighlight|{{^(}}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>
}}
[[Category:Internationalization templates]]
</noinclude>
</noinclude>

Revision as of 19:23, 6 October 2022

<languages/> [[Special:MyLanguage/{{{1}}}|{{{1}}}]][[:{{{1}}}| ]]

File:Test Template Info-Icon.svg Template documentationpurge ]

<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>

  1. <translate> Should better be substitute this template, and then the wikilink target embedded in a <tvar name=1><syntaxhighlight lang="html" inline="1">Template:^(tvar name=idTemplate:)^...Template:^(/tvarTemplate:)^</syntaxhighlight></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><syntaxhighlight lang="html" inline="1">[[Template:^(tvar name=1Template:)^Special:MyLanguage/CommunicationTemplate:^(/tvarTemplate:)^|About communication]]</syntaxhighlight></tvar>.</translate>
  2. <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>
    <syntaxhighlight lang="html" inline="1">Template:^(translateTemplate:)^some textTemplate:^(/translateTemplate:)^ {{ll|Communication|2=Template:^(translateTemplate:)^About communicationTemplate:^(/translateTemplate:)^}} Template:^(translateTemplate:)^some textTemplate:^(/translateTemplate:)^</syntaxhighlight>
    <translate> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate>
  3. <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>‎<tvar></tvar>.</translate>
    <translate> As example, instead <tvar name=1>{{ll|Communication}}</tvar>, translation markup in translatable page will be <tvar name=2><syntaxhighlight lang="html" inline="1">Template:^(tvar name=1Template:)^{{ll|Communication}}Template:^(/tvarTemplate:)^</syntaxhighlight></tvar>.</translate>

<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>