Difference between revisions of "Templates"

From Freephile Wiki
Jump to navigation Jump to search
(Out with the old, in with the new. LibreOffice became the favored Office suite a long time ago.)
Line 13: Line 13:
 
==== Static Templates ====
 
==== Static Templates ====
 
Templates can also be used to include static content on a page (kind of like a keyword macro).  This is useful when you want to mark a bunch of pages with some common message content, e.g. 'obsolete', '[[:Template:stub|stub]]', 'needs attention' etc.; or perhaps you have a collection of articles that you want to apply a common resource box or navigation to.
 
Templates can also be used to include static content on a page (kind of like a keyword macro).  This is useful when you want to mark a bunch of pages with some common message content, e.g. 'obsolete', '[[:Template:stub|stub]]', 'needs attention' etc.; or perhaps you have a collection of articles that you want to apply a common resource box or navigation to.
 +
 +
 
=== Using Templates ===
 
=== Using Templates ===
 
# (optional) create a new page
 
# (optional) create a new page
Line 23: Line 25:
 
=== Available Templates ===
 
=== Available Templates ===
 
See all templates in the [[Special:Prefixindex|prefix index]] (choose the 'Template' namespace in the select box, then press 'Go')
 
See all templates in the [[Special:Prefixindex|prefix index]] (choose the 'Template' namespace in the select box, then press 'Go')
 +
 +
=== Debugging Templates ===
 +
You can add <code>action=raw&templates=expand</code> to the end of a page URL to see the raw wikitext as
  
 
=== See also ===
 
=== See also ===

Revision as of 12:35, 1 May 2020

Wiki Template System[edit | edit source]

See the handbook for full details; the local Help:Templates article covers essentials as does the Quick Guide on meta See wp:Wikipedia:Template_messages for info about the templates used in the wikipedia project.

Templates are a system for streamlining the data entry and display formatting of article content.

Types and Examples[edit | edit source]

Presentation and Data Entry[edit | edit source]

A simple example of this is the Wikipedia article on the rock band 'U2'. This article and all Wikipedia articles about musical groups use a "Infobox musical artist" template so authors can record the basics about the musical artist: Band name, discography, genre, albums etc., AND that information can be systematically formatted for display in the article.

Functional Templates[edit | edit source]

Templates can also be used to include functionality in a page. An example of this is to mark a page, or link to another application systematically based on either a variable, or a "magic word" like PAGENAME More on MediaWiki variables is at meta:Help:Variable

Static Templates[edit | edit source]

Templates can also be used to include static content on a page (kind of like a keyword macro). This is useful when you want to mark a bunch of pages with some common message content, e.g. 'obsolete', 'stub', 'needs attention' etc.; or perhaps you have a collection of articles that you want to apply a common resource box or navigation to.


Using Templates[edit | edit source]

  1. (optional) create a new page
  2. insert the template marker in the page content e.g.

{{my footer}} would use the 'my footer' template on a page

  1. (optional) save and re-edit the page as needed to fill out a data entry template

Templates that are data entry templates (having multiple parameters) will have (by convention) a 'noinclude' section found in the template that gives an example which makes it a simple matter of copy and paste to begin using that template.

Available Templates[edit | edit source]

See all templates in the prefix index (choose the 'Template' namespace in the select box, then press 'Go')

Debugging Templates[edit | edit source]

You can add action=raw&templates=expand to the end of a page URL to see the raw wikitext as

See also[edit | edit source]

The "transclusion" idea is similar (and shares the same basic syntax) allowing you to include other article content by inclusion.

Office Templates[edit | edit source]

See LibreOffice

Programming with Template Systems[edit | edit source]

There are many templating systems in use throughout technology platforms. In fact, any server-side processing technology like PHP offers a built-in notion of templating for separating your display from your business logic and your data using 'includes'. Carried further, there are major templating sub-systems, template libraries, and/or programming frameworks that utilize a particular templating strategy.

Smarty[edit | edit source]

For PHP programmers, one of the oldest and well-known template systems (aside from building your own using includes) is the Smarty system. For a quick overview, see wp:Smarty There is also a crash course on the Smarty website in addition to the documentation

Smarty in CiviCRM[edit | edit source]

As of Feb. 2016, Civi uses Smarty v2

Something like this little one-liner can help to generate your Smarty captures if you have a long list of custom variables

php -r 'include ("/var/www/equality-tech.com/www/drupal/sites/all/modules/custom/eqt/eqt.module"); $stack="stats"; $vars = getHaystack($stack); foreach ($vars as $k=>$v) {print "{capture assign=$k}{{$stack}.$k}{/capture}\n";};';


Drupal[edit | edit source]

Offers a choice of template systems

Django[edit | edit source]

Uses the Django Template system