User blog:Gamedezyner/Templates - A Brief Introduction

So lately I've been seeing a lot of talk about templates. I thought I'd write up a little bit of info to help people understand what they are and how they work!

What is a Template?
You might ask, "What is a template?"


 * The definition of template (in computing) is
 * a preset format for a document or file, used so that the format does not have to be recreated each time it is used.

In Wikia terms, it's a page that contains content or formatting that will be used a lot, so we include that page on other pages instead of re-writing the content every time we need it.

Using Templates on Wikia
To use templates on Wikia, simply put the name of the template inside double curly brackets. If the template uses parameters, seperate them with a vertical pipe character (|). The vertical pipe character is usually typed by holding shift and pressing the backslash key (\). The result would look something like this:. Including this code on a page "calls" the template, causing Wikia to place the template on the page.

Types of Templates
There are two types of templates you can use:

Static Templates
These are templates whose content is the same on every page it's used. These are great for special messages, banners, and even signatures!

Take a look at this Static Example. The code on that page is:.

This template is used by placing  on any other page.

Dynamic Templates
These are templates whose content changes depending on the parameters set when it's used. These are great for infoboxes, and other content that uses odd or complex formatting.

Take a look at this Dynamic Example. The code on the template page is:. The part inside curly brackets is a parameter, which defaults to say "nothing" if you don't give it a value.



This calls the template without any parameters like so:

This template accepts a parameter, so we can change its content on this page by adding a parameter to the call:

This example calls the template using a parameter like so:

Creating Templates
A static template is really just a page in the Template namespace. If you just need to repeat some content on a few pages, then you can simply create a page and add the content you wish to use. If you want to create a dynamic template, you will need to use parameters. A parameter is a variable that is set when you call the template. When writing the template page, you can include parameters using triple curly brackets. When the template is called, this is replaced by the value in the template call.


 * Using Numbered Parameters
 * If you only plan to use a few parameters, you can simply number them. This will use the order that they are entered in the template call. Say I like to discuss my likes and dislikes a lot. I would create a page at Template:LikeDislike, and make its content . Then on a page about desserts I would put  . When that page is saved, I would get


 * Using Named Parameters
 * If you want to use a lot of parameters, you can name them. This will require you to call them by name, but won't pay attention to the order. Using the same idea of likes and dislikes, I could create the same template page, and make its content . Then I could call it by putting  . In the end I would get


 * Default Values for Parameters
 * If you don't specify a parameter, it will be empty. This can be avoided by adding a vertical pipe (|) after the parameter number/name on the template page, then specifying a default value. In the dynamic example above, I added "|nothing" after the 1 to make it default to say "nothing" if the parameter isn't specified.

Advanced Stuff
You can do a lot of amazing things with templates. So much that I couldn't dream to go over all of it. I will, however, give a quick explanation of some of the other things that work in templates.

Special Tags
There are some special tags for use on template pages which can help you control what is shown when it is called:


 * noinclude
 * The  tag allows you to prevent a segment of the template page from being shown on another page. This is useful for placing instructions about how to use the template on the template page itself. If you surround the instructions with these tags, they will not show on other pages when the template is used.


 * includeonly
 * The  tag allows you to make a segment of the template page only show when the template is used on another page. This is useful for automatically placing categories on pages when the template is useed. If you surround the category link with these tags, it will only categorize other pages when the template is used.


 * onlyinclude
 * The  tag allows you to make only a certain segment of the template page show when the template is used.

Magic Words
Magic Words are special templates that automatically get replaced with certain values. An example would be. This Magic Word will always give the number of pages on the wiki it is used on. It automatically gets this number every time the page is visited.
 * Example
 * Code:
 * Result:

Magic Words can be very useful in some types of templates because they allow you to reference things like the title or the last editor of the page that the template is used on. You can read more about Magic Words, on this page.

Parser Functions
Some of the most complex templates make use of parser functions. These special functions allow you to use logic to help determine what content is shown when the template is called. A great example would be the  function. This function checks to see if the first value given is true or false, then outputs the correct result. A zero is treated as false, while any other number is treated as true.
 * Example 1
 * Code:
 * Result:


 * Example 2
 * Code:
 * Result:

There are many other parser functions that do some pretty cool things. You can read more about parser functions on this page.