Feed The Beast Wiki

Follow the Feed The Beast Wiki on Discord or Mastodon!

READ MORE

Feed The Beast Wiki
No edit summary
Line 8: Line 8:
   
 
== Creating templates ==
 
== Creating templates ==
Before creating any templates, please make sure that no template similar to yours exists. A full list with a brief description can be found on [[User:Jinbobo|Jinbobo's user page]]. Please also test your templates on the [[:Category:Template sandboxes|Template sandboxes]] to make sure your concept works.
+
Before creating any templates, please make sure that no template similar to yours exists. A full list with a brief description can be found on [[User:Jinbobo#All_Templates|Jinbobo's user page]]. Please also test your templates on the [[:Category:Template sandboxes|Template sandboxes]] to make sure your concept works.
   
 
When creating templates, please make your code as easy to understand as possible. Please also include your reason to create the template in the edit summary. Documentation is required for every template, see the documentation section of this guideline to read how documentation for templates should be made.
 
When creating templates, please make your code as easy to understand as possible. Please also include your reason to create the template in the edit summary. Documentation is required for every template, see the documentation section of this guideline to read how documentation for templates should be made.
   
After creating the template, please update the list of templates at [[User:Jinbobo|Jinbobo's user page]] with your new template with an accompanying description.
+
After creating the template, please update the list of templates at [[User:Jinbobo#All_Templates|Jinbobo's user page]] with your new template with an accompanying description.
   
 
== Editing templates ==
 
== Editing templates ==

Revision as of 07:49, 23 July 2013

Templates are powerful tools for simplifying many tasks, organizing work, standardizing content, and otherwise improving the encyclopedia. However, they also have potential drawbacks and limitations which should be kept in mind when developing new templates and using existing ones. Please follow the guidelines listed below when creating and editing templates, not following these guidelines may result in a temporary block and in more severe cases a permanent block.

Problems and questions

Templates on this wiki is maintained by Jinbobo of the wiki team, all questions and issues regarding templates should be directed to him.

Read this before making any changes to templates

Some templates are widely used across the wiki, please be aware of what you are doing when you are editing these templates, breaking such templates will always result in a temp-block. If you do not know what a template is for, then do not edit that template.

Creating templates

Before creating any templates, please make sure that no template similar to yours exists. A full list with a brief description can be found on Jinbobo's user page. Please also test your templates on the Template sandboxes to make sure your concept works.

When creating templates, please make your code as easy to understand as possible. Please also include your reason to create the template in the edit summary. Documentation is required for every template, see the documentation section of this guideline to read how documentation for templates should be made.

After creating the template, please update the list of templates at Jinbobo's user page with your new template with an accompanying description.

Editing templates

When editing templates, please make sure that all brackets are balanced, use the preview feature (removing <includeonly> tags when needed) whenever it is possible. When editing templates that are used widely across the wiki or making changes that greatly modifies the behavior of the template, please test the template with the template sandboxes first, please also discuss changes on the talk page before making such changes. Please always include what modification you made and your motive or intent of the change in the edit summary when editing templates.

If your change add or removes parameters, changes the behavior of the template, you must also update the template documentation. When modifying a family of templates, for example navigation boxes, please make sure that all templates in the same family has the same generic behavior. Template families often use the same documentation, so updating the documentation would be less of a task.

Metatemplates are templates which are intended to be used in other templates and sometimes templates are completely built out of metatemplates, always discuss your change on the template's talk page before you make changes to such templates.

Documenting templates

Template documentation should always be up-to-date and should be updated when templates are modified. Not updating or creating the documentation will always result in a block of some time.

Documentation format

Template documentation should generally include the following information in the order specified below:

  • The purpose of the template.
  • The parameters of the template.
  • Usage examples of the template.
  • Related templates.
  • Categories.

Documentation boilerplate

All documentation should start with {{Doc/Start}} and should end with {{Doc/End}}.

Template purpose

The lead section of the template documentation should be a brief introduction purpose of the template, an accompanying "Usage" section to explain in detail of the purpose of the template, this section could also include how template works to assist editors that wish to edit the template, if should it goes too deep into detail of how it works, a sub-section should be used.

Template parameters

The second section of the template should be an unorded list of parameters and their default value, properties and description in the following format:

* '''<Parameter name>''': ''(Optional or Default:<value>)'' <Description>

which produces:

  • <Parameter name>: (Optional or Default:<value>) <Description>

Please omit the optional and default section if the parameter is required, only one of "Optional" and "Default:<value>" should exist, since if a default value is set, the parameter is optional.

Template examples

The following section should be examples of some general and common usage of the template, this section can be omitted if examples cannot be displayed. The examples could be in the following formats depending on the size or properties:

Format 1

Code
<Description>
<pre><Code></pre>
produces:
<Template call>
Result

<Description>

<Code>

produces: <Template call>

Notes
  • A line break can be added after the "produces:" if desired.

Format 2

Code
{| class="wikitable"
! Code !! Result
|-
| <Code> || <Result>
|}
Result
Code Result
<Code> <Result>
Notes
  • Additional formatting, rows, and columns can be added if desired.

Related templates

The last part of the documentation should include a list of related templates and a brief description of them. This part should be split into two sections, sub-templates or child-templates in a section named "Sub-templates", templates with similar purpose in a section named "See also". A navbox could also be added in the "See also" section but should never replace the see also links. Closely related templates could share the same documentation of other templates by using:

{{Documentation|<Template name>}}

Template categories

Include categories in the template documentation with Template:TC, add the code: {{TC|<Category name>}} to the bottom of the documentation before the {{Doc/end}}.