Template:Translatable template/doc: Difference between revisions
Template page
More actions
No edit summary |
m 22 revisions imported |
||
| (20 intermediate revisions by 11 users not shown) | |||
| Line 1: | Line 1: | ||
<noinclude>{{Documentation subpage}}</noinclude> | <noinclude>{{Documentation subpage}}</noinclude> | ||
{{Redirects|TNT|tnt}} | |||
{{Lua|Module:Template translation}} | |||
== Purpose == | == Purpose == | ||
This template is used to show translatable templates in the language of the current page. Templates, like all other MediaWiki pages, can be translated using the [[mw:Extension:Translate|Translate extension]], which creates subpages with the form "pagename/language code". The template first checks if the name of the page contains a language code. If it does, it then checks if the template name given as a first parameter has a translation in that language. If the page name does not contain a language code, or if the navigation template doesn't exist in that language, it will display the English template. | This template is used to show translatable templates in the language of the current page. Templates, like all other MediaWiki pages, can be translated using the [[mw:Extension:Translate|Translate extension]], which creates subpages with the form "pagename/language code". The template first checks if the name of the page contains a language code. If it does, it then checks if the template name given as a first parameter has a translation in that language. If the page name does not contain a language code, or if the navigation template doesn't exist in that language, it will display the English template. | ||
{{#invoke:Autotranslate|autotranslate|base=I18n templates}} | |||
== How to use == | == How to use == | ||
* <code><nowiki>{{Translatable template|</nowiki>''name of template''<nowiki>|</nowiki>''parameters....''<nowiki>}}</nowiki></ | * <code><nowiki>{{Translatable template|</nowiki>''name of template''<nowiki>|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
* <code><nowiki>{{TNT|</nowiki>''name of template''<nowiki>|</nowiki>''parameters....<nowiki>}}</nowiki></ | * <code><nowiki>{{TNT|</nowiki>''name of template''<nowiki>|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
* <code><nowiki>{{tnt|</nowiki>''name of template''<nowiki>|</nowiki>''parameters....<nowiki>}}</nowiki></ | * <code><nowiki>{{tnt|</nowiki>''name of template''<nowiki>|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
The above simplied syntax cannot work if the named template also needs to be transcluded in other translatable templates, because it would cause self-recursion of {{tl|Translatable template}}. An alternative is to use {{tl|Translatable template name}} which does not expand the template with its parameters, but only returns the resolved template name, which can then be | The above simplied syntax cannot work if the named template also needs to be transcluded in other translatable templates, because it would cause self-recursion of {{tl|Translatable template}}. An alternative is to use {{tl|Translatable template name}} which does not expand the template with its parameters, but only returns the resolved template name, which can then be | ||
transcluded normally: | transcluded normally: | ||
* <code><nowiki>{{{{Translatable template name|</nowiki>''name of template''<nowiki>}}|</nowiki>''parameters....''<nowiki>}}</nowiki></ | * <code><nowiki>{{{{Translatable template name|</nowiki>''name of template''<nowiki>}}|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
* <code><nowiki>{{{{TNTN|</nowiki>''name of template''<nowiki>}}|</nowiki>''parameters....<nowiki>}}</nowiki></ | * <code><nowiki>{{{{TNTN|</nowiki>''name of template''<nowiki>}}|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
* <code><nowiki>{{{{tntn|</nowiki>''name of template''<nowiki>}}|</nowiki>''parameters....<nowiki>}}</nowiki></ | * <code><nowiki>{{{{tntn|</nowiki>''name of template''<nowiki>}}|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
Example (from [[ | Example (from [[Commons:Privacy policy]]): | ||
: <code><nowiki>{{Translatable template| | :<code><nowiki>{{Translatable template|Commons policies and guidelines}}</nowiki></code> or <code><nowiki>{{TNT|Commons policies and guidelines}}</nowiki></code> | ||
which includes translated versions of {{tl| | which includes translated versions of {{tl|Commons policies and guidelines}} if it exists, or the English version if translations don't exist. | ||
== Parameters == | == Parameters == | ||
| Line 24: | Line 28: | ||
One named parameter is treated specially: | One named parameter is treated specially: | ||
* <code><nowiki>{{Translatable template|namespace=</nowiki>'':somename:''<nowiki>|</nowiki>''page name''<nowiki>|</nowiki>''parameters....''<nowiki>}}</nowiki></ | * <code><nowiki>{{Translatable template|namespace=</nowiki>'':somename:''<nowiki>|</nowiki>''page name''<nowiki>|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
* <code><nowiki>{{TNT|namespace=</nowiki>'':somename:''<nowiki>|</nowiki>''page name''<nowiki>|</nowiki>''parameters....<nowiki>}}</nowiki></ | * <code><nowiki>{{TNT|namespace=</nowiki>'':somename:''<nowiki>|</nowiki>''page name''<nowiki>|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
* <code><nowiki>{{tnt|namespace=</nowiki>'':somename:''<nowiki>|</nowiki>''page name''<nowiki>|</nowiki>''parameters....<nowiki>}}</nowiki></ | * <code><nowiki>{{tnt|namespace=</nowiki>'':somename:''<nowiki>|</nowiki>''page name''<nowiki>|</nowiki>''parameters....''<nowiki>}}</nowiki></code> | ||
This <code>namespace</code> will be used to specify another namespace from which the translatable pagename will be transcluded, instead of referencing the page name from the default <code>:Template:</code> namespace. Note that this parameter is also passed (without modification) within the parameters of the transclusion. | This <code>namespace</code> will be used to specify another namespace from which the translatable pagename will be transcluded, instead of referencing the page name from the default <code>:Template:</code> namespace. Note that this parameter is also passed (without modification) within the parameters of the transclusion. | ||
Example with one | Example with one parameter (from [[meta:Global sysops]]): | ||
* <code><nowiki>{{TNT|Special global permissions/Seealso|Global sysops}}</nowiki></code> | * <code><nowiki>{{TNT|:Special global permissions/Seealso|Global sysops}}</nowiki></code> | ||
where | where "Global sysops" - is value of first unnamed parameter, transferred into called page [[:meta:Special global permissions/Seealso]]. | ||
== See also == | == See also == | ||
* {{tl|Translatable template name}}, alias {{tl|TNTN}} or {{tl|tntn}} | * {{tl|Translatable template name}}, alias {{tl|TNTN}} or {{tl|tntn}} | ||
* {{tl|multilingual link}} – choose link to Wikipedia article in the user interface language | |||
<includeonly> | <includeonly> | ||
<!-- PUT HERE THE CATEGORIES OF THE TEMPLATE --> | <!-- PUT HERE THE CATEGORIES OF THE TEMPLATE --> | ||
[[Category:Navigational templates|* {{PAGENAME}}]] | [[Category:Navigational templates|* {{PAGENAME}}]] | ||
[[Category:Internationalization templates|{{PAGENAME}}]] | [[Category:Internationalization templates|{{PAGENAME}}]] | ||
</includeonly> | </includeonly> | ||