Template:Lua
Module:Is article is used to determine if a given page is an article, a redirect, a disambiguation page, does not exist or a bad title.
Usage
Return values
Results and return values
Result
|
Return value
|
---|
Article
|
article
|
---|
Redirect
|
redirect
|
---|
Disambiguation page
|
dab
|
---|
Page does not exist
|
empty
|
---|
bad title
|
badtitle
|
---|
Parameter list
Parameter
|
Explanation
|
---|
1
|
Positional or numbered parameter; The page name title.
|
---|
local p = {}
local disambiguationTemplates = {
"[Dd]isambiguation",
"[Dd]isambig",
"[Dd]isamb",
"[Dd]ab",
"[Ss]urname"
}
function p.main(frame)
local getArgs = require('Module:Arguments').getArgs
local args = getArgs(frame)
title = args[1]
page = mw.title.new(title, 0)
if (not page) then
return "badtitle"
end
if (not page.exists) then
return "empty"
end
if (page.isRedirect) then
return "redirect"
end
local content = page:getContent()
if (content) then
for i, name in ipairs(disambiguationTemplates) do
if (content:match('{{%s?' .. name .. '%s?}}')) then
return "dab"
end
end
end
return "article"
end
return p