![]() | This is a documentation subpage for Module:Namespace detect. It may contain usage information, categories and other content that is not part of the original module page. |
![]() | This Lua module is used in system messages, and on approximately 524,000 pages, or roughly 1% of all pages. Changes to it can cause immediate changes to the Wikipedia user interface. To avoid major disruption and server load, any changes should be tested in the module's /sandbox or /testcases subpages, or in your own module sandbox. The tested changes can be added to this page in a single edit. Please discuss changes on the talk page before implementing them. |
![]() | This module depends on the following other modules: |
This module allows you to output different text depending on the namespace that a given page is in. It is a Lua implementation of the ((namespace detect)) template, with a few improvements: all namespaces and all namespace aliases are supported, and namespace names are detected automatically for the local wiki.
((#invoke: Namespace detect | main | page = <!-- page to detect namespace for, if not the current page --> | main = <!-- text to return for the main namespace --> | talk = <!-- text to return for talk namespaces --> <!-- text to return for specific subject namespaces --> | portal = | category = | user = | wikipedia = | mediawiki = | book = | timedtext = | template = | special = | media = | file = | image = | help = | module = | other = <!-- text to return for unspecified namespaces --> | demospace = <!-- namespace to display text for --> | subjectns = <!-- set to "yes" to treat talk pages as the corresponding subject page --> ))
|demospace=
is set to an invalid namespace value.|demospace=
parameter is not set, then the module uses the current page.Possible values for subject namespace parameters are as follows:
Namespace | Aliases |
---|---|
main
|
|
user
|
|
wikipedia
|
project , wp
|
file
|
image
|
mediawiki
|
|
template
|
tm
|
help
|
|
category
|
|
portal
|
|
draft
|
|
timedtext
|
|
module
|
Use the following to display a table with the different possible namespace parameters:
((#invoke:Namespace detect|table|talk=yes))
To include the parameter for talk namespaces, use |talk=yes
.
This module is designed to be portable. To use it on a different wiki, all you need to do is to change the values in Module:Namespace detect/config. Instructions are available on that page.
The module uses a data page at Module:Namespace detect/data. This page is loaded with mw.loadData, which means it is processed once per page rather than once per #invoke. This was done for performance reasons.