可在模块:NavplateList/doc创建此模块的帮助文档
local p = {}
local dpl = require('Module:DPLlua').ask -- 假设Module:DPLlua是您提供的Lua脚本
function p.navplate(frame)
local category = frame.args.category or ''
local extraParam1 = frame.args.extraParam1 or ''
local extraParam2 = frame.args.extraParam2 or ''
local namespace = frame.args.namespace or ''
-- 构建DPL查询
local query = {
titlematch = category,
-- 添加其它查询参数
-- ...
format = 'json', -- 返回JSON格式以便处理
allowcachedresults = true -- 允许缓存结果
}
if extraParam1 ~= '' then
query.titlematch = extraParam1
end
if extraParam2 ~= '' then
query.titlematch = extraParam2
end
if namespace ~= '' then
query.namespace = namespace
end
-- 执行DPL查询
local result = dpl.ask(query)
-- 格式化输出
local output = ''
for _, page in ipairs(result) do
output = output .. '* [[' .. page.title .. ']]\n'
end
return output
end
return p