Module:Special page interlanguage links

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