Module:Pagetype/doc: Difference between revisions

Content deleted Content added
m fix typo: "_" -> "-"
Tactica (talk | contribs)
m Expand {{lua}}.
 
(13 intermediate revisions by 10 users not shown)
Line 1:
{{high-risk|all-pages=yes use}}
{{used in system|in [[MediaWiki:Templatesandbox-editform-legend]]}}
{{module rating|protected}}
{{cascade-protected template|page=module}}
{{Lua|Module:Pagetype/config|Module:Arguments|Module:Disambiguation|Module:Namespace detect|Module:Wikitext Parsing|Module:Yesno}}
 
This module is used to detect the page type of a given page. It detects [[WP:REDIRECT|redirect pages]] automatically and is highly customisable. It can be used on its own or as a meta-module to create other page-type-detection templates. This module can also be accessed using {{tl|pagetype}}.
Line 31 ⟶ 32:
| category =
| portal =
| book =
| draft =
| education program =
| timedtext =
| module =
Line 40 ⟶ 39:
| media =
| talk =
| redirect =
| soft_redirect =
| dab =
| na =
| other =
| booksia = =
| nonexistent =
| book plural = ''custom text''
}}
</pre>
Line 69 ⟶ 72:
|-
| Module namespace || <code>module</code>
|-
| Book namespace || <code>book</code>
|-
| Other namespaces || <code>page</code>
Line 108 ⟶ 109:
| <code><nowiki>{{#invoke:pagetype|main|page=Wikipedia:Namespace}}</nowiki></code> || {{#invoke:pagetype|main|page=Wikipedia:Namespace}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt}}</nowiki></code> || {{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt}}
|}
 
Line 124 ⟶ 125:
| portal = ''yes''
| draft = ''yes''
| education program = ''yes''
| timedtext = ''yes''
| topic = ''yes''
Line 149:
|-
| Draft namespace || <code>draft</code>
|-
| Education program namespace || <code>education program page</code>
|-
| Timed Text namespace || <code>Timed Text page</code>
Line 169 ⟶ 167:
| category = ''no''
| module = ''no''
| book = ''no''
}}
 
Line 192 ⟶ 189:
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|main=no}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|main=no}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt}}</nowiki></code> || {{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt|timedtext=Yes}}</nowiki></code> || {{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt|timedtext=Yes}}
|}
 
Line 274 ⟶ 271:
| style="text-align: center;" | {{cross}}
| portal
|-
| Book
| style="text-align: center;" | {{cross}}
| style="text-align: center;" | {{tick}}
| style="text-align: center;" | {{tick}}
| style="text-align: center;" | {{tick}}
| book
|-
| Draft
Line 288 ⟶ 278:
| style="text-align: center;" | {{cross}}
| draft
|-
| Education Program
| style="text-align: center;" | {{cross}}
| style="text-align: center;" | {{cross}}
| style="text-align: center;" | {{tick}}
| style="text-align: center;" | {{cross}}
| education program page
|-
| TimedText
Line 361 ⟶ 344:
| <code><nowiki>{{#invoke:pagetype|main|page=Wikipedia:Namespace|defaultns=extended}}</nowiki></code> || {{#invoke:pagetype|main|page=Wikipedia:Namespace|defaultns=extended}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt|defaultns=extended}}</nowiki></code> || {{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt|defaultns=extended}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt|defaultns=all}}</nowiki></code> || {{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt|defaultns=all}}
|}
 
Line 383 ⟶ 366:
| category = ''custom text''
| portal = ''custom text''
| book = ''custom text''
| draft = ''custom text''
| education program = ''custom text''
| timedtext = ''custom text''
| module = ''custom text''
Line 411 ⟶ 392:
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|main=custom text}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|main=custom text}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt}}</nowiki></code> || {{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt|timedtext=custom text}}</nowiki></code> || {{#invoke:pagetype|main|page=TimedText:Imagine (John Lennon song - sample).ogg.en.srt|timedtext=custom text}}
|}
 
Line 456 ⟶ 437:
|-
! Class !! Class values !! Output
|-
| Disambiguation page || <code>disambiguation</code>, <code>disambig</code>, <code>disamb</code>, <code>dab</code> || <code>page</code>
|-
| No applicable class || <code>na</code>, <code>n/a</code> || <code>page</code>
Line 469 ⟶ 448:
It is also possible to specify a custom value for the main namespace classes:
 
&#123;{#invoke:pagetype|main|''class''|dab=''yes''|na=''yes''}}
 
&#123;{#invoke:pagetype|main|''class''|dab=''custom text''|na=''custom text''}}
 
This works the same way that it does for the custom namespace page types. Possible parameters are:
* '''dab''': a custom value for disambiguation-class pages. If set to "<code>yes</code>", "<code>y</code>", "<code>true</code>" or "<code>1</code>", this produces "disambiguation page". If set to "<code>no</code>", "<code>n</code>", "<code>false</code>" or "<code>0</code>", no custom value is produced. If set to any other value it produces that text.
* '''na''': a custom value for NA-class pages. It works in the same way as the <code>dab</code> parameter. The default value for "<code>yes</code>" etc. is "page".
 
; Examples
 
Line 483 ⟶ 462:
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|dab}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|dab}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|dab|dab=custom text}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|dab|dab=custom text}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|na}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|na}}
Line 513 ⟶ 488:
| <code><nowiki>{{#invoke:pagetype|main|page=UK|redirect=custom text}}</nowiki></code> || {{#invoke:pagetype|main|page=UK|redirect=custom text}}
|}
 
== Disambiguation pages ==
By default, the module uses [[Module:Disambiguation]] to detect [[WP:DAB|disambiguation pages]] in the main namespace. If you want, you can turn this detection off, or use a custom value for disambiguation pages.
 
&#123;{#invoke:pagetype|main|dab=''no''}}
 
&#123;{#invoke:pagetype|main|dab=''custom text''}}
 
; Examples
 
{| class="wikitable"
|-
! Code !! Result
|-
| <code><nowiki>{{#invoke:pagetype|main|page=Mercury}}</nowiki></code> || {{#invoke:pagetype|main|page=Mercury}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=Mercury|dab=no}}</nowiki></code> || {{#invoke:pagetype|main|page=Mercury|dab=no}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|dabMercury|dab=custom text}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|dabMercury|dab=custom text}}
|}
 
== Set index articles ==
Documentation pending.
 
== Soft redirects ==
Documentation pending.
 
== Non-existent pages ==
Documentation pending.
 
== Other namespaces ==
Line 531 ⟶ 535:
|-
| <code><nowiki>{{#invoke:pagetype|main|page=Wikipedia:Namespace|other=custom text|wikipedia=wikipedia-space text}}</nowiki></code> || {{#invoke:pagetype|main|page=Wikipedia:Namespace|other=custom text|wikipedia=wikipedia-space text}}
|}
 
== Plurals ==
 
By default the module returns the name of the namespace in the singular. Adding the parameter {{para|plural|y}} returns the plural form.
{| class="wikitable"
|-
! Code !! Result
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|dab}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|dab}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|plural=y}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|plural=y}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=Category:Books}}</nowiki></code> || {{#invoke:pagetype|main|page=Category:Books}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=Category:Books|plural=y}}</nowiki></code> || {{#invoke:pagetype|main|page=Category:Books|plural=y}}
|}
The rules for pluralisation can be customised in [[Module:Pagetype/config]] to allow localisation.
 
== Capitalisation ==
 
By default the module returns the page type in lowercase. Adding the parameter {{para|caps|y}} returns a version with a capital letter at the start.
{| class="wikitable"
|-
! Code !! Result
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|caps=y}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|caps=y}}
|-
| <code><nowiki>{{#invoke:pagetype|main|page=United Kingdom|plural=y|caps=y}}</nowiki></code> || {{#invoke:pagetype|main|page=United Kingdom|plural=y|caps=y}}
|}