Permanently protected template

Template:Documentation: Difference between revisions

From The HILLSIDE
Jump to navigation Jump to search
meta>Rich Farmbrough
No edit summary
meta>Rich Farmbrough
Undid revision 714753814 by Rich Farmbrough (talk)
Line 1: Line 1:
<!--
{{#invoke:documentation|main|_content={{ {{#invoke:documentation|contentTitle}}}}}}<noinclude>
  Automatically add {{template sandbox notice}} when on a /sandbox page.
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
-->{{#ifeq: {{SUBPAGENAME}} | sandbox
| <div style="clear: both;"></div>{{template sandbox notice|{{{livepage|}}}}}
}}<!--
  Automatically add {{pp-template}} to protected templates.
-->{{template other
| {{#ifeq: {{PROTECTIONLEVEL:move}} | sysop
  | {{pp-template|docusage=yes}}
  | {{#if: {{PROTECTIONLEVEL:edit}}
    | {{pp-template|docusage=yes}}
    | <!--Not protected, or only semi-move-protected-->
    }}
  }}
}}<!--
  Start of green doc box.
-->{{documentation/start box2
| preload = {{{preload|}}}  <!--Allow custom preloads-->
| heading = {{{heading|¬}}}  <!--Empty but defined means no header-->
| heading-style = {{{heading-style|}}}
| content = {{{content|}}}
 
<!--Some namespaces must have the /doc, /sandbox and /testcases
    in talk space-->
| docspace = {{documentation/docspace}}
 
| 1 = {{{1|}}}  <!--Other docname, if fed-->
 
<!--The namespace is added in /start box2-->
| template page = {{documentation/template page}}
 
}}<!-- Start content --><!--
  Start load the /doc content:
  Note: The line breaks between this comment and the next line are necessary
  so  "=== Headings ===" at the start and end of docs are interpreted.
-->
Binary magic is:  {{#if:{{{content|}}}|1|0}}{{#if:{{{1|}}}|1|0}}{{#ifexist:{{{1|}}}|1|0}}{{#ifexist:{{documentation/docspace}}:{{documentation/template page}}/doc|1|0}}{{Break}}
{{#switch: {{#if:{{{content|}}}|1|0}}{{#if:{{{1|}}}|1|0}}{{#ifexist:{{{1|}}}|1|0}}{{#ifexist:{{documentation/docspace}}:{{documentation/template page}}/doc|1|0}}
| 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110
| 1111 = {{{content|}}}
| 0110 | 0111 = {{ {{{1}}} }}
| 0001 | 0011 = {{ {{documentation/docspace}}:{{documentation/template page}}/doc }}
| 0000 | 0100 | 0010 | 0101 =
}}
<!--
  End load the /doc content:
  Note: The line breaks between this comment and the previous line are necessary
  so  "=== Headings ===" at the start and end of docs are interpreted.
-->{{documentation/end box2
| preload = {{{preload|}}}  <!--Allow custom preloads-->
| content = {{{content|}}}
| link box = {{{link box|}}}  <!--So "link box=off" works-->
 
<!--Some namespaces must have the /doc, /sandbox and /testcases
    in talk space-->
| docspace = {{documentation/docspace}}
 
| 1 = {{{1|}}}  <!--Other docname, if fed-->
 
<!--The namespace is added in /end box2-->
| template page = {{documentation/template page}}
 
}}<!--
  End of green doc box
--><noinclude>
 
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
</noinclude>

Revision as of 19:18, 11 April 2016

<templatestyles src="Module:Documentation/styles.css"></templatestyles>

Template documentation

Usage

Customizing display

Overrides exist to customize the output in special cases:

  • {{documentation|heading=}}: change the text of the "documentation" heading. If this is set to blank, the entire heading line (including the first [edit] link) will also disappear.

Rationale

This template allows any page to use any documentation page, and makes it possible to protect templates while allowing anyone to edit the template's documentation, categories, and interwiki links. It also reduces server resources by circumventing a technical limitation of templates (see a developer's explanation).

See also