Questo modulo serve ad aggiungere a una pagina gli interlink corrispondenti a un certo elemento di Wikidata, diverso dall'elemento corrispondente alla pagina stessa (i cui interlink rimangono comunque automaticamente presenti). Può servire in casi particolari, quando è utile interlinkare le pagine di altre Wikipedie, ma per motivi organizzativi dei vari progetti l'elemento Wikidata è diverso.

  • {{#invoke:Interlink|addInterlinks|Q12345}} aggiunge gli interlink dell'elemento Q12345
  • {{#invoke:Interlink|addInterlinks|Q12345|P123}} aggiunge gli interlink dell'elemento indicato alla proprietà P123 dell'elemento Q12345
  • {{#invoke:Interlink|addInterlinks||P123}} aggiunge gli interlink dell'elemento indicato alla proprietà P123 dell'elemento corrente

local getArgs = require('Modulo:Arguments').getArgs
local p = {}

function p.addInterlinks(frame)
    local t = getArgs(frame)
    local itemId = t[1]
    
    local sitelinks = mw.wikibase.getEntity(itemId)['sitelinks']
    local code = ''
    for k,v in pairs(sitelinks) do
    	sitelink = sitelinks[k]
    	globalSiteId = sitelink['site']
    	if globalSiteId:find("^[%w-]+wiki$")
    	        and globalSiteId ~= 'commonswiki'
    	        and globalSiteId ~= 'wikidatawiki'
    	        and globalSiteId ~= 'specieswiki' then
    	    local lang = globalSiteId:gsub("wiki$", "")
    	    code = code .. '[['..lang..':'..sitelink['title']..']]'
        end
    end
    
    return code
end
 
return p