2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

Module:Linker

萌娘百科,万物皆可萌的百科全书!转载请标注来源页面的网页链接,并声明引自萌娘百科。内容不可商用。
跳转到导航 跳转到搜索
Template-info.svg 模块文档  [查看] [编辑] [历史] [刷新]

该模块提供了一些创建链接用的辅助函数。

canLink 函数

该函数接受1个无名参数。如果该参数包含模板、链接、标签,那么会返回空字符串,否则原样返回。

例子:

  • {{#invoke:Linker|canLink|声优}} => 声优
  • {{#invoke:Linker|canLink|[[声优]]}} =>

tryLink 函数

该函数接受1个无名参数。如果该参数包含模板、链接、标签,那么会原样返回,否则会自动生成链接。

例子:

local p = {}

function p._canLink(name)
	if string.find(name, '[%[{<]') or mw.text.killMarkers(name) ~= name then
		return false
	else
		return true
	end
end

function p.canLink(frame)
	local target = frame.args[1]

	if p._canLink(target) then
		return target
	else
		return ''
	end
end

function p.tryLink(frame)
	local target = frame.args[1]

	if p._canLink(target) then
		return '[[' .. target .. ']]'
	else
		return target
	end
end

return p