« Modèle:Localized link » : différence entre les versions

De wikarphy
simplify
m 54 versions importées
 
(32 versions intermédiaires par 10 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
{{#ifeq:{{FULLPAGENAME:{{{1}}}}}|{{FULLPAGENAME:{{translatable}}}}<!--self link (including translation pages)-->
<noinclude>
<languages/>
</noinclude><!--
-->{{#ifeq:{{FULLPAGENAME:{{{1}}}}}|{{FULLPAGENAME:{{translatable}}}}<!--self link (including translation pages)-->
   |<b>
   |<b>
}}[[Special:MyLanguage/{{{1}}}|{{{2|{{#ifexist:Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page display title/{{pagelang}}<!--if the source page, pagelang returns empty-->
}}<!---->[[Special:MyLanguage/{{{1}}}|{{#if:{{{2|}}}
   |{{#if:{{{nsp|}}}
|{{{2}}}
     |{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}
|{{{2|{{#ifexist:Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page display title/{{PAGELANGUAGE}}<!--if the source page, PAGELANGUAGE returns en-->
   |{{#ifexpr:{{#if:{{{nsp|}}}|1|0}} and {{NAMESPACENUMBER:{{{1}}}}}!=0
     |{{#ifeq:{{PAGELANGUAGE}}|en
      |{{PAGENAME:{{{1}}}}}
      |<!-- check whether the string is not empty --><!--
    -->{{#if:{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}
        |{{#ifeq:{{#invoke:string|find|{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}|:}}|0
          |{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}
          | {{#invoke:string|match|{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}|:(.*)}}
        }}
        |<!-- pass parameter to, e.g., "Template:LC zh"; check whether the string is not empty --><!--
      -->{{#if:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} | nsp = 0 }}
          |{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} | nsp = 0 }}
          |{{{1}}}
        }}
      }}
    }}
     |{{ {{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 the translation page does not exist (or called from the source page), output as is-->
   |{{#if:{{{nsp|}}}
   |{{#if:{{{nsp|}}}
     |{{PAGENAME:{{{1}}}}}
     |{{#if:{{PAGENAME:{{{1}}}}}
      |{{PAGENAME:{{{1}}}}}
      |{{{1}}}
    }}
     |{{{1}}}
     |{{{1}}}
   }}
   }}
}}}}}]]{{#ifeq:{{FULLPAGENAME:{{{1}}}}}|{{FULLPAGENAME:{{translatable}}}}<!--self link (including translation pages)-->
}}<!--#ifexist--><!--
-->}}}<!--{{{2|--><!--
-->}}<!--#if:{{{2|}}}--><!--
-->]]<!--
-->{{#ifeq:{{FULLPAGENAME:{{{1}}}}}|{{FULLPAGENAME:{{translatable}}}}<!--self link (including translation pages)-->
   |</b>
   |</b>
}}<span style="display:none">[[:{{{1}}}| ]]</span><!-- T63547 --><noinclude>
}}<span style="display:none">[[:{{{1}}}| ]]</span><!-- T63547 --><noinclude>
{{ {{TNTN|documentation}} }}
{{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 the "<tvar name=1><code>nsp</code></tvar>" parameter is not defined, as link text this displays the full pagename (including the namespace); otherwise — if the "<tvar name=1><code>nsp</code></tvar>" parameter is defined to any value the link text displays the short pagename (without the 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--> Substitute this template, then embed the wikilink target in a <tvar name=1>{{#tag:syntaxhighlight|{{^(}}tvar name=id{{)^}}...{{^(}}/tvar{{)^}}|lang=html|inline=1}}</tvar>, separate from the translatable text of the link.</translate>
#: <translate><!--T:22--> For example, instead of <tvar name=1><code><nowiki>{{ll|Communication|About communication}}</nowiki></code></tvar>, the translation markup in the 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, exclude this code from the translatable section.</translate>
#: <translate><!--T:23--> For example, for <tvar name=1><code>some text <nowiki>{{ll|Communication|About communication}}</nowiki> some text</code></tvar>, the translation markup in the 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 is the same as the name of the target page, all of the code could also be embedded into <tvar name=1>{{tag|tvar|open}}</tvar>.</translate>
#: <translate><!--T:24--> For example, instead of <tvar name=1>{{Tlx|ll|Communication}}</tvar>, the wikicode in the translatable page will be <tvar name=2>{{#tag:syntaxhighlight|{{^(}}tvar name=1{{)^}}{{((}}ll{{!}}Communication{{))}}{{^(}}/tvar{{)^}}|lang=html|inline=1}}</tvar>.</translate>
 
== Test cases ==
{{Localized link/testcases}}
 
<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>

Dernière version du 8 décembre 2024 à 19:00

<languages/> {{#ifeq:|

 |

}}[[Special:MyLanguage/{{{1}}}|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:|:}}/Page display title/fr

 |{{#ifexpr:{{#if:|1|0}} and !=0
   |{{#ifeq:fr|en
     |
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |{{{1}}}
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:
   |{{#if:
     |
     |{{{1}}}
   }}
   |{{{1}}}
 }}

}}}}]]{{#ifeq:|

 |

}}[[:{{{1}}}| ]]

Documentation du modèle

Modèle:Tsh Modèle: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> Modèle: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> Modèle:(| class="wikitable" |- ! <translate> Use</translate> ! <translate> Becomes</translate> |- | Modèle:Tlx | {{#ifeq:Communication|

 |

}}[[Special:MyLanguage/Communication|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:|:}}Communication/Page display title/fr

 |{{#ifexpr:{{#if:|1|0}} and 0!=0
   |{{#ifeq:fr|en
     |Communication
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Communication
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:
   |{{#if:Communication
     |Communication
     |Communication
   }}
   |Communication
 }}

}}}}]]{{#ifeq:Communication|

 |

}} |- | Modèle:Tlx | {{#ifeq:Communication|

 |

}}{{#if:コミュニケーション |コミュニケーション |コミュニケーション}}{{#ifeq:Communication|

 |

}} |- | Modèle:Tlx | {{#ifeq:Wikarphy:About|

 |

}}[[Special:MyLanguage/Project:About|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Wikarphy|Wikarphy:}}About/Page display title/fr

 |{{#ifexpr:{{#if:|1|0}} and 4!=0
   |{{#ifeq:fr|en
     |About
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Project:About
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:
   |{{#if:About
     |About
     |Project:About
   }}
   |Project:About
 }}

}}}}]]{{#ifeq:Wikarphy:About|

 |

}} |- | Modèle:Tlx | {{#ifeq:Wikarphy:About|

 |

}}[[Special:MyLanguage/Project:About|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Wikarphy|Wikarphy:}}About/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 4!=0
   |{{#ifeq:fr|en
     |About
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Project:About
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:About
     |About
     |Project:About
   }}
   |Project:About
 }}

}}}}]]{{#ifeq:Wikarphy:About|

 |

}} |Modèle:)

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

 |{{#ifexpr:{{#if:0|1|0}} and 0!=0
   |{{#ifeq:fr|en
     |Extension:Translate
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Extension:Translate
       }}
     }}
   }}
   |{{ Modèle: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>

  1. <translate> Substitute this template, then embed the wikilink target in a <tvar name=1>[[:Modèle:^(]]tvar name=id[[:Modèle:)^]]...[[:Modèle:^(]]/tvar[[:Modèle:)^]]</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>[[[[:Modèle:^(]]tvar name=1[[:Modèle:)^]]Special:MyLanguage/Communication[[:Modèle:^(]]/tvar[[:Modèle:)^]]|About communication]]</tvar>.</translate>
  2. <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>
    [[:Modèle:^(]]translate[[:Modèle:)^]]some text[[:Modèle:^(]]/translate[[:Modèle:)^]] {{ll|Communication|2=[[:Modèle:^(]]translate[[:Modèle:)^]]About communication[[:Modèle:^(]]/translate[[:Modèle:)^]]}} [[:Modèle:^(]]translate[[:Modèle:)^]]some text[[:Modèle:^(]]/translate[[:Modèle:)^]]
    <translate> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate>
  3. <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>Modèle:Tag</tvar>.</translate>
    <translate> For example, instead of <tvar name=1>Modèle:Tlx</tvar>, the wikicode in the translatable page will be <tvar name=2>[[:Modèle:^(]]tvar name=1[[:Modèle:)^]]{{ll|Communication}}[[:Modèle:^(]]/tvar[[:Modèle:)^]]</tvar>.</translate>

Test cases

Modèle: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>
  • {{{{#ifeq:Modèle:Translatable template|
 |

}}[[Special:MyLanguage/Template:Translatable template|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Translatable template/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Translatable template
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:Translatable template
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Translatable template
     |Translatable template
     |Template:Translatable template
   }}
   |Template:Translatable template
 }}

}}}}]]{{#ifeq:Modèle:Translatable template|

 |

}} }} - <translate> alias <tvar name=1>{{{{#ifeq:Modèle:TNT|

 |

}}[[Special:MyLanguage/Template:TNT|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}TNT/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |TNT
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:TNT
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:TNT
     |TNT
     |Template:TNT
   }}
   |Template:TNT
 }}

}}}}]]{{#ifeq:Modèle:TNT|

 |

}} }}</tvar> or <tvar name=2>{{{{#ifeq:Modèle:Tnt|

 |

}}[[Special:MyLanguage/Template:tnt|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Tnt/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Tnt
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:tnt
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Tnt
     |Tnt
     |Template:tnt
   }}
   |Template:tnt
 }}

}}}}]]{{#ifeq:Modèle:Tnt|

 |

}} }}</tvar></translate>

  • {{{{#ifeq:Modèle:Translatable template name|
 |

}}[[Special:MyLanguage/Template:Translatable template name|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Translatable template name/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Translatable template name
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:Translatable template name
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Translatable template name
     |Translatable template name
     |Template:Translatable template name
   }}
   |Template:Translatable template name
 }}

}}}}]]{{#ifeq:Modèle:Translatable template name|

 |

}} }} - <translate> alias <tvar name=1>{{{{#ifeq:Modèle:TNTN|

 |

}}[[Special:MyLanguage/Template:TNTN|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}TNTN/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |TNTN
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:TNTN
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:TNTN
     |TNTN
     |Template:TNTN
   }}
   |Template:TNTN
 }}

}}}}]]{{#ifeq:Modèle:TNTN|

 |

}} }}</tvar> or <tvar name=2>{{{{#ifeq:Modèle:Tntn|

 |

}}[[Special:MyLanguage/Template:tntn|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Tntn/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Tntn
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:tntn
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Tntn
     |Tntn
     |Template:tntn
   }}
   |Template:tntn
 }}

}}}}]]{{#ifeq:Modèle:Tntn|

 |

}} }}</tvar></translate>

  • {{{{#ifeq:Modèle:Page language link|
 |

}}[[Special:MyLanguage/Template:Page language link|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Page language link/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Page language link
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:Page language link
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Page language link
     |Page language link
     |Template:Page language link
   }}
   |Template:Page language link
 }}

}}}}]]{{#ifeq:Modèle:Page language link|

 |

}} }} - <translate> alias <tvar name=1>{{{{#ifeq:Modèle:Pll|

 |

}}[[Special:MyLanguage/Template:pll|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Pll/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Pll
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:pll
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Pll
     |Pll
     |Template:pll
   }}
   |Template:pll
 }}

}}}}]]{{#ifeq:Modèle:Pll|

 |

}} }}</tvar></translate> - <translate> add a link from a translatable page to another translatable page in the same language</translate>

{{#if:Modèle:Tsh

Modèle: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> Modèle: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> Modèle:(| class="wikitable" |- ! <translate> Use</translate> ! <translate> Becomes</translate> |- | Modèle:Tlx | {{#ifeq:Communication|

 |

}}[[Special:MyLanguage/Communication|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:|:}}Communication/Page display title/fr

 |{{#ifexpr:{{#if:|1|0}} and 0!=0
   |{{#ifeq:fr|en
     |Communication
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Communication
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:
   |{{#if:Communication
     |Communication
     |Communication
   }}
   |Communication
 }}

}}}}]]{{#ifeq:Communication|

 |

}} |- | Modèle:Tlx | {{#ifeq:Communication|

 |

}}{{#if:コミュニケーション |コミュニケーション |コミュニケーション}}{{#ifeq:Communication|

 |

}} |- | Modèle:Tlx | {{#ifeq:Wikarphy:About|

 |

}}[[Special:MyLanguage/Project:About|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Wikarphy|Wikarphy:}}About/Page display title/fr

 |{{#ifexpr:{{#if:|1|0}} and 4!=0
   |{{#ifeq:fr|en
     |About
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Project:About
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:
   |{{#if:About
     |About
     |Project:About
   }}
   |Project:About
 }}

}}}}]]{{#ifeq:Wikarphy:About|

 |

}} |- | Modèle:Tlx | {{#ifeq:Wikarphy:About|

 |

}}[[Special:MyLanguage/Project:About|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Wikarphy|Wikarphy:}}About/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 4!=0
   |{{#ifeq:fr|en
     |About
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Project:About
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:About
     |About
     |Project:About
   }}
   |Project:About
 }}

}}}}]]{{#ifeq:Wikarphy:About|

 |

}} |Modèle:)

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

 |{{#ifexpr:{{#if:0|1|0}} and 0!=0
   |{{#ifeq:fr|en
     |Extension:Translate
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Extension:Translate
       }}
     }}
   }}
   |{{ Modèle: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>

  1. <translate> Substitute this template, then embed the wikilink target in a <tvar name=1>[[:Modèle:^(]]tvar name=id[[:Modèle:)^]]...[[:Modèle:^(]]/tvar[[:Modèle:)^]]</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>[[[[:Modèle:^(]]tvar name=1[[:Modèle:)^]]Special:MyLanguage/Communication[[:Modèle:^(]]/tvar[[:Modèle:)^]]|About communication]]</tvar>.</translate>
  2. <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>
    [[:Modèle:^(]]translate[[:Modèle:)^]]some text[[:Modèle:^(]]/translate[[:Modèle:)^]] {{ll|Communication|2=[[:Modèle:^(]]translate[[:Modèle:)^]]About communication[[:Modèle:^(]]/translate[[:Modèle:)^]]}} [[:Modèle:^(]]translate[[:Modèle:)^]]some text[[:Modèle:^(]]/translate[[:Modèle:)^]]
    <translate> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate>
  3. <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>Modèle:Tag</tvar>.</translate>
    <translate> For example, instead of <tvar name=1>Modèle:Tlx</tvar>, the wikicode in the translatable page will be <tvar name=2>[[:Modèle:^(]]tvar name=1[[:Modèle:)^]]{{ll|Communication}}[[:Modèle:^(]]/tvar[[:Modèle:)^]]</tvar>.</translate>

Test cases

Modèle: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>
  • {{{{#ifeq:Modèle:Translatable template|
 |

}}[[Special:MyLanguage/Template:Translatable template|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Translatable template/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Translatable template
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:Translatable template
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Translatable template
     |Translatable template
     |Template:Translatable template
   }}
   |Template:Translatable template
 }}

}}}}]]{{#ifeq:Modèle:Translatable template|

 |

}} }} - <translate> alias <tvar name=1>{{{{#ifeq:Modèle:TNT|

 |

}}[[Special:MyLanguage/Template:TNT|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}TNT/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |TNT
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:TNT
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:TNT
     |TNT
     |Template:TNT
   }}
   |Template:TNT
 }}

}}}}]]{{#ifeq:Modèle:TNT|

 |

}} }}</tvar> or <tvar name=2>{{{{#ifeq:Modèle:Tnt|

 |

}}[[Special:MyLanguage/Template:tnt|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Tnt/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Tnt
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:tnt
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Tnt
     |Tnt
     |Template:tnt
   }}
   |Template:tnt
 }}

}}}}]]{{#ifeq:Modèle:Tnt|

 |

}} }}</tvar></translate>

  • {{{{#ifeq:Modèle:Translatable template name|
 |

}}[[Special:MyLanguage/Template:Translatable template name|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Translatable template name/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Translatable template name
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:Translatable template name
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Translatable template name
     |Translatable template name
     |Template:Translatable template name
   }}
   |Template:Translatable template name
 }}

}}}}]]{{#ifeq:Modèle:Translatable template name|

 |

}} }} - <translate> alias <tvar name=1>{{{{#ifeq:Modèle:TNTN|

 |

}}[[Special:MyLanguage/Template:TNTN|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}TNTN/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |TNTN
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:TNTN
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:TNTN
     |TNTN
     |Template:TNTN
   }}
   |Template:TNTN
 }}

}}}}]]{{#ifeq:Modèle:TNTN|

 |

}} }}</tvar> or <tvar name=2>{{{{#ifeq:Modèle:Tntn|

 |

}}[[Special:MyLanguage/Template:tntn|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Tntn/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Tntn
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:tntn
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Tntn
     |Tntn
     |Template:tntn
   }}
   |Template:tntn
 }}

}}}}]]{{#ifeq:Modèle:Tntn|

 |

}} }}</tvar></translate>

  • {{{{#ifeq:Modèle:Page language link|
 |

}}[[Special:MyLanguage/Template:Page language link|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Page language link/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Page language link
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:Page language link
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Page language link
     |Page language link
     |Template:Page language link
   }}
   |Template:Page language link
 }}

}}}}]]{{#ifeq:Modèle:Page language link|

 |

}} }} - <translate> alias <tvar name=1>{{{{#ifeq:Modèle:Pll|

 |

}}[[Special:MyLanguage/Template:pll|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:Modèle|Modèle:}}Pll/Page display title/fr

 |{{#ifexpr:{{#if:0|1|0}} and 10!=0
   |{{#ifeq:fr|en
     |Pll
     |{{#if:
        |{{#ifeq:0|0
          |
          | String Module Error: Target string is empty
        }}
        |{{#if:{{ Modèle:TNTN | nsp = 0 }}
          |{{ Modèle:TNTN | nsp = 0 }}
          |Template:pll
       }}
     }}
   }}
   |{{ Modèle:TNTN }}
 }}
 |{{#if:0
   |{{#if:Pll
     |Pll
     |Template:pll
   }}
   |Template:pll
 }}

}}}}]]{{#ifeq:Modèle:Pll|

 |

}} }}</tvar></translate> - <translate> add a link from a translatable page to another translatable page in the same language</translate>| [[Category:Template documentation pages{{#translation:}}]] }}