<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>https://www.wikiw.cn/index.php?action=history&amp;feed=atom&amp;title=%E6%A8%A1%E5%9D%97%3AInterwiki</id>
	<title>模块:Interwiki - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://www.wikiw.cn/index.php?action=history&amp;feed=atom&amp;title=%E6%A8%A1%E5%9D%97%3AInterwiki"/>
	<link rel="alternate" type="text/html" href="https://www.wikiw.cn/index.php?title=%E6%A8%A1%E5%9D%97:Interwiki&amp;action=history"/>
	<updated>2026-04-09T17:56:52Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://www.wikiw.cn/index.php?title=%E6%A8%A1%E5%9D%97:Interwiki&amp;diff=2029&amp;oldid=prev</id>
		<title>2023年9月10日 (日) 09:09 imported&gt;SunAfterRain</title>
		<link rel="alternate" type="text/html" href="https://www.wikiw.cn/index.php?title=%E6%A8%A1%E5%9D%97:Interwiki&amp;diff=2029&amp;oldid=prev"/>
		<updated>2023-09-10T09:09:29Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local familys = {}&lt;br /&gt;
local siteCfg&lt;br /&gt;
siteCfg = {&lt;br /&gt;
	lang = &amp;#039;zh&amp;#039;,&lt;br /&gt;
	family = &amp;#039;wiki&amp;#039;,&lt;br /&gt;
	familyToInterPrefix = {&lt;br /&gt;
		wiki = &amp;#039;w&amp;#039;,&lt;br /&gt;
		wiktionary = &amp;#039;wikt&amp;#039;,&lt;br /&gt;
		wikiquote = &amp;#039;q&amp;#039;,&lt;br /&gt;
		wikibooks = &amp;#039;b&amp;#039;, &lt;br /&gt;
		wikinews = &amp;#039;n&amp;#039;,&lt;br /&gt;
		wikisource = &amp;#039;s&amp;#039;,&lt;br /&gt;
		wikiversity = &amp;#039;v&amp;#039;,&lt;br /&gt;
		wikivoyage = &amp;#039;voy&amp;#039;,&lt;br /&gt;
	},&lt;br /&gt;
	getInterWikiFromWikiId = function (wikiId)&lt;br /&gt;
		if wikiId == &amp;#039;mediawikiwiki&amp;#039; then&lt;br /&gt;
			return &amp;#039;mw:&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		local familyPrefix = &amp;#039;&amp;#039;&lt;br /&gt;
		local lang = wikiId&lt;br /&gt;
		for _, family in ipairs(familys) do&lt;br /&gt;
			if wikiId:sub(-#family) == family then&lt;br /&gt;
				lang = wikiId:sub(0, -#family-1)&lt;br /&gt;
				if family ~= siteCfg.family then&lt;br /&gt;
					familyPrefix = siteCfg.familyToInterPrefix[family] .. &amp;#039;:&amp;#039;&lt;br /&gt;
				end&lt;br /&gt;
				break&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if lang == siteCfg.lang then&lt;br /&gt;
			return familyPrefix&lt;br /&gt;
		end&lt;br /&gt;
		return familyPrefix .. lang .. &amp;#039;:&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
for family, _ in pairs(siteCfg.familyToInterPrefix) do&lt;br /&gt;
	table.insert(familys, family)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function inArray(array, item)&lt;br /&gt;
	for _, this in ipairs(array) do&lt;br /&gt;
		if this == item then&lt;br /&gt;
			return true&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local getArgs = require(&amp;#039;Module:Arguments&amp;#039;).getArgs&lt;br /&gt;
&lt;br /&gt;
function p._main(args)&lt;br /&gt;
	local lang = args[&amp;#039;lang&amp;#039;] or args[&amp;#039;1&amp;#039;] or args[1]&lt;br /&gt;
	local family = args[&amp;#039;family&amp;#039;]&lt;br /&gt;
	local wikiId = args[&amp;#039;wiki&amp;#039;]&lt;br /&gt;
	if not wikiId then&lt;br /&gt;
		if not lang and not family then&lt;br /&gt;
			error(&amp;#039;At least one of the parameters lang, family or wiki must be provided.&amp;#039;)&lt;br /&gt;
		elseif family and not inArray(familys, family) then&lt;br /&gt;
			error(&amp;#039;Unknown family:  &amp;quot;&amp;#039; .. family .. &amp;#039;&amp;quot;.&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
		wikiId = (lang or siteCfg.lang) .. (family or siteCfg.family)&lt;br /&gt;
	end&lt;br /&gt;
	local overrideTitle = args[&amp;#039;title&amp;#039;]&lt;br /&gt;
	local entity = args[&amp;#039;entity&amp;#039;]&lt;br /&gt;
	if not entity then&lt;br /&gt;
		if overrideTitle then&lt;br /&gt;
			entity = mw.wikibase.getEntityIdForTitle(overrideTitle)&lt;br /&gt;
			if not entity then&lt;br /&gt;
				error(&amp;#039;The title &amp;quot;&amp;#039; .. overrideTitle .. &amp;#039;&amp;quot; isn\&amp;#039;t valid or there are no wikidata entity for this title yet.&amp;#039;)&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			entity = mw.wikibase.getEntityIdForCurrentPage()&lt;br /&gt;
			if not entity then&lt;br /&gt;
				error(&amp;#039;There are no wikidata entity for this page yet.&amp;#039;)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local remotePage = mw.wikibase.getSitelink(entity, wikiId)&lt;br /&gt;
	if remotePage then&lt;br /&gt;
		return &amp;#039;[[:&amp;#039; .. siteCfg.getInterWikiFromWikiId(wikiId) .. remotePage .. &amp;#039;]]&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	return args.fallback or error(&amp;#039;Can\&amp;#039;t found interwiki for wikiId &amp;#039; .. wikiId .. &amp;#039; for entity &amp;#039; .. entity .. &amp;#039;.&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	return p._main(getArgs(frame, {&lt;br /&gt;
		trim = true,&lt;br /&gt;
		removeBlanks = true&lt;br /&gt;
	}))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;SunAfterRain</name></author>
	</entry>
</feed>