Jump to content

Module:Special page interlanguage links

From mediawiki.org
Module documentation
warning Warning:This page is shared between multiple wikis.
All changes to this page will be automatically copied to all wikis listed in the left side bar.
To avoid unnecessary page regeneration and server load, changes should be tested on the page's sandbox.

Module Quality

[edit]
Module:Special page interlanguage links success: 1, error: 0, skipped: 0
Module:Special page interlanguage links/sandbox success: 1, error: 0, skipped: 0

Documentation

[edit]

This module allows displaying interlanguage links to all existing languages on special pages. It’s a custom to show such interlanguage links on Special:RecentChanges, but it can be used on any other special page as well that exists on all wikis of that project.

Functions

[edit]

p.main(frame)

[edit]
Main entry point from wikitext. The first unnamed parameter should contain the canonical (English) special page name, for example
{{#invoke:Special page interlanguage links|main|RecentChanges}}

p._main(specialPageName)

[edit]
Main entry point from other modules. The first argument should contain the canonical (English) special page name, for example
local interlanguageLinks = p._main('RecentChanges')

local p = {}

function p._main(specialPageName)
	local links = {}
	for n, _ in pairs(mw.site.interwikiMap('local')) do
		if mw.language.isKnownLanguageTag(n) then
			table.insert(links, string.format('[[%s:Special:%s]]', n, specialPageName))
		end
	end
	table.sort(links)
	return table.concat(links)
end

function p.main(frame)
	return p._main(frame.args[1])
end

return p