Module:Unsubst/doc: Difference between revisions

Content deleted Content added
No edit summary
Tags: Reverted Mobile edit Mobile web edit
Reverted 1 edit by 2804:29B8:5161:2E33:BD3A:7743:CD0:AF9C (talk): Unexplained blanking
 
(30 intermediate revisions by 22 users not shown)
Line 1:
<!-- Categories where indicated at the bottom of this page, please. -->
{{Highhigh-risk| 3841439 |all-over = pages=yes}}
{{Module rating|protected}}
{{lua|Module:Template invocation|noprotcat=yes}}
 
Maintenance templates, such as {{tl|Citation needed}} or {{tl|Refimprove}}, should never be substituted. A trick to avoid that is to make a template substitute to its transcluded form. This module implements that trick.
Helper module to facilitate a substituted template transform into a template transclusion.
 
Maintenance templates, such as {{tl|Citation needed}} or {{tl|Refimprove}}, should never be substituted. A trick to avoid that is to make a template substitute to its transcluded form.
 
Infoboxes should use [[Module:Unsubst-infobox]], as should any other templates with parameters listed in block format by default.
 
=== Usage ===
 
To turn a template into a self-substituting template, wrap the existing template code with:
<pre>
{{SAFESUBSTsafesubst:<noinclude />#invoke: Unsubst||$B=
 
[ ... existing template code ... ]
Line 27 ⟶ 25:
 
<pre>
{{SAFESUBSTsafesubst:<noinclude />#invoke: Unsubst||$params=[ parameters ]|$aliases=[ aliases ]|$flags=[ flags ]|$B=
 
[ ... existing template code ... ]
Line 41 ⟶ 39:
 
These parameters can be manipulated using parser functions to provide more complicated options (note that in the parameters any parser function, or template or module invocation, should also have <code><nowiki>SAFESUBST:<noinclude /></nowiki></code>).
 
Parameter {{para|$template-name}} will override the subst'd template's name with the template name assigned to this parameter.
 
=== Example ===
Consider a template Template:Example containing the following code:
<pre>
{{SAFESUBSTsafesubst:<noinclude />#invoke: Unsubst||foo=bar |date=__DATE__ |$B=
 
[ ... Template code goes here ... ]
Line 53:
 
{| class="wikitable"
|-
! Original !! Result
|-
| {{tlsc|example}} || {{tlc|Example|foo=bar|date{{=}}{{#time:F Y}}|foo{{=}}bar}}
|-
| {{tlsc|example|foo{{=}}X}} || {{tlc|Example|foo{{=}}X|date{{=}}{{#time:F Y}}|foo{{=}}X}}
|-
| {{tlsc|example|baz{{=}}X}} || {{tlc|Example|foo=bar|baz{{=}}X|date{{=}}{{#time:F Y}}|foo{{=}}bar}}
|-
| {{tlsc|example|date{{=}}January 2001}} || {{tlc|Example|foodate{{=}}barJanuary 2001|datefoo{{=}}January 2001bar}}
|}