Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Guidelines  





2 Suggested practices  



2.1  Referencing templates  





2.2  Template names  





2.3  Sandbox for experiments  





2.4  Readability  





2.5  Line breaks  





2.6  Substitution  





2.7  Documentation  





2.8  Modules  







3 History  





4 Searching for templates  





5 See also  





6 Notes  














Wikipedia:Template namespace






العربية

فارسی

ि
Ilokano
Bahasa Indonesia
مصرى


پښتو

Simple English
سنڌي
Slovenščina
Српски / srpski

Türkçe
اردو
ייִדיש

 

Edit links
 









Project page
Talk
 

















Read
View source
View history
 








Tools
   


Actions  



Read
View source
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 





Page semi-protected

From Wikipedia, the free encyclopedia
 


This page not to be confused with Template:Namespaces
  • e
  • Namespaces
    Subject namespaces Talk namespaces
    0 (Main/Article) Talk 1
    2 User User talk 3
    4 Wikipedia Wikipedia talk 5
    6 File File talk 7
    8 MediaWiki MediaWiki talk 9
    10 Template Template talk 11
    12 Help Help talk 13
    14 Category Category talk 15
    100 Portal Portal talk 101
    118 Draft Draft talk 119
    710 TimedText TimedText talk 711
    828 Module Module talk 829
    Former namespaces
    108 Book Book talk 109
    442 Course Course talk 443
    444 Institution Institution talk 445
    446 Education Program Education Program talk 447
    2300 Gadget Gadget talk 2301
    2302 Gadget definition Gadget definition talk 2303
    2600 Topic 2601
    Virtual namespaces
    -1 Special
    -2 Media
    Current list (API call)

    The Template namespace on Wikipedia is used to store templates, which contain Wiki markup intended for inclusion on multiple pages, usually via transclusion. Although the Template namespace is used for storing most templates, it is possible to transclude and substitute from other namespaces,[1] and so some template pages are placed in other namespaces, such as the User namespace.

    Templates help maintain consistent formatting and aid navigation between articles. They often include optional and/or variable elements controlled by parameters to allow for specialized use. Templates are also used to assist in a large variety of Wikipedia maintenance tasks. Each template has a matching Template talk: page where editors can discuss the design and implementation of the associated template (see Help:Using talk pages for how to participate in talk page discussions).

    A template is transcluded into another page by including a template tag in that page's content. A template tag contains the template page name surrounded by double curly braces, e.g. {{Disambiguation}}. If the template's page name does not begin with a namespace and colon, it is assumed to be in the Template namespace.

    Internal links to template pages may be made by using the Template: prefix, e.g. [[Template:Disambiguation]]. These links go to a page that directly contains a base template and often documentation.

    Guidelines

  • WP:TMPG
  • Suggested practices

    Referencing templates

    Sometimes you will want to refer to a template, rather than actually invoking it. An easy way to do this is to call Template:Tl (short for "template link"). For example, to reference the Cleanup template, typing {{tl|Cleanup}} results in {{Cleanup}}. You can also add parameters using Template:Tlp; for example, {{tlp|Convert|1|m}} displays as {{Convert|1|m}}.

    Check the template documentation on Template:Tl for other options, such as {{tlb}} (bold), {{tlx}} (code), {{tlxi|param1|param2}} (italic parameters), and many more.

    Template names

    Template names can be made of one or more words, such as {{Train topics}}. The first character is not case-sensitive, so {{cleanup}} and {{Cleanup}} are the same template. All other characters are case sensitive, so {{cfd}} and {{cfD}} are not the same. Template names are easiest to remember if they follow standard English spelling, spacing, and capitalization (also see the naming conventions for articles). Avoid having templates whose names differ only in case, spacing, or punctuation.

    Sandbox for experiments

    If you wish to experiment with templates (and not have your experiments deleted before you are done with them), you may do so in the Template sandbox. You may also use the templates X1, X2, X3, X4, X5, X6, X7, X8, X9, X10, X11, and X12 for experimental purposes. To include a test template, use the form {{X1}} for template X1, {{X2}} for template X2, etc.

    Existing templates often each have their own sandbox and test case pages (especially those that use {{Documentation}}). Changes should be thoroughly tested there before being applied to the main template, in order to prevent unintentional damage to many pages.

    Readability

    For templates that use a large number of parameters, it can be helpful to place each parameter on a separate line and align the equals signs. This helps future editors to more easily read the wikicode.

    {{Example template name
    | first_parameter  = Text of first_value
    | second_parameter = Text of second_value
    | third_parameter  = Text of third_parameter
    | etc              = etc
    }}

    Line breaks

    Some templates may accidentally cause extra line breaks in the rendered articles. This is especially true of infobox templates and other template boxes that usually float on the right side of an article, since the additional lines will not be seen on the template page. For more information, see Wikipedia:Line-break handling.

    As a general guideline, avoid two line breaks together in your template. These may "add up" with other line breaks in the article and be displayed as unwanted white space.

    Substitution

    Invoking a template using the form

    {{subst:name of template (|parameters |...)}}

    (that is, inserting subst: immediately after the opening pair of curly brackets) will make a copy of the template text and place it on the page, where it will be viewable in the source. The template is no longer transcluded and future changes to the template will not change the text. As a guideline, this method should be used for any short, temporary messages which are removed quickly, such as on User_talk: pages. The standard new user {{Welcome}} message is a good example.

    Use subst: also if you need to edit the message after including it on the page. If you don't need to edit it, and would rather the message is automatically updated along with changes made to the template, don't use subst:.

    Documentation

    Because templates represent a step up in difficulty for the novice editor, documentation should be provided which describes its usage (optional parameters) and scope (where it should be used). There are two different ways to do this:

    One alternative is to use <noinclude> to add a minor description direct into the template, for example:

    '''This is a {{{1}}} article.'''<noinclude>
    Place this template on any article that requires description. It 
    takes one parameter, an adjective used to describe the article. 
    For example, {{article-describe|bad}} produces the text, 
    '''This is a bad article.'''
    </noinclude>
    

    Another alternative is to create a formal /doc subpage for the documentation (preferred for templates with multiple parameters, etc.) and add <noinclude>{{Documentation}}</noinclude> after the actual template. The first "noinclude" tag should be placed on the same line as the end braces of the actual template in the following manner:

    {{(template name)
    (piped parameters)
    }}<noinclude>...
    

    If the "noinclude" tag starts on the line below the template's closing braces, then unwanted whitespace is introduced at the bottom of the template when it is used in articles and on other pages.

    Modules

    Lua modules are sometimes used instead of templates to store reusable material. Reasons for this include usage of module-specific features such as loops or stored values, and complex code is often easier to read and maintain in a module. If a module is easily implementable in a template it generally should be, since there are more users with experience editing templates.

    If a module is intended to be used in articles or talk pages, a template wrapper should generally be created to simplify usage without directly requiring the #invoke parser function. Documentation is then mostly located on the template's /doc page, with the module's documentation pointing to the template and/or explaining further technical details that are unnecessary at the primary template documentation.

    A template wrapper uses more of the post-expand include size limit than calling the module directly, therefore it may be necessary to avoid using one in articles that are near the limit.

    History

    Historically, an "msg:" prefix had to be added in front of the template name when it was used on a page. For example, {{msg:stub}} was typed instead of {{stub}}. This is no longer necessary.

    In Wikipedia's first 35 months, there was no template or transclusion mechanism at all. The page Wikipedia:Boilerplate text was created in September 2002 to collect frequently used text in various Wikipedia processes. The MediaWiki namespace was introduced with MediaWiki 1.2.6 on December 6, 2003, and was used not only for the user interface but also for creating boilerplate text messages to be inserted in articles using the {{msg: ...}} syntax. This function was replaced with the Template namespace during the software upgrade to MediaWiki 1.3 on May 30, 2004. As a function of the "Template namespace initialisation script", all non-system messages were moved to the new namespace. The initialisation script also replaced MediaWiki: references in articles with Template: to bypass the redirects created by the moves.

    For a short time, Wikipedia:Articles for deletion (then known as votes for deletionorVfD) used MediaWiki: messages named in the format "MediaWiki:VfD-articlename". These were moved to the Template: space in June 2004 and were named "Template:VfD-articlename". This usage is deprecated now in favor of subpages.

    Around 2005, growing complexity of template functions and the desire to consolidate similar templates led to the creation of extremely complex conditional hacks such as nested templates and CSS tricks. These undesirable methods led to the development of m:Extension:ParserFunctions, added in 2006 with MediaWiki 1.7. By 2009, many problems with template readability and complexity still remained (On templates and programming languages). In 2013, in order to address page load times, mostly due to slow template renders, Lua was enabled, creating a Module: namespace for programmers to make use of (New Lua templates bring faster, more flexible pages to your wiki).

    Searching for templates

    Use this form to search in the Template: or Template_talk: namespaces. See Help:Searching for more information.

    Pages which contain information on commonly used templates:

    If you're unable to find an existing template for your situation, but don't feel comfortable creating one yourself, you can ask for help at Wikipedia:Requested templates.

    See also

    Notes

    1. ^ Namespaces from which transclusion is not allowed are specified on a wiki by the variable $wgNonincludableNamespaces

    Retrieved from "https://en.wikipedia.org/w/index.php?title=Wikipedia:Template_namespace&oldid=1224620420"

    Categories: 
    Wikipedia project content guidelines
    Wikipedia template administration
    Wikipedia how-to
    Wikipedia features
    Wikipedia template guidelines
    Wikipedia template help
    Hidden categories: 
    Wikipedia semi-protected project pages
    Wikipedia move-protected project pages
     



    This page was last edited on 19 May 2024, at 12:51 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki