Module:Test template call: Difference between revisions
Jump to navigation
Jump to search
Created page with "local p = {} function p.callTemplate(frame) local templateName = frame.args[1] or "ExampleTemplate" -- Get template name from first argument local templateArgs = {} -- Pass all arguments from the module invocation to the template --callTemplate|Template:MyTemplate|arg1|arg2=value}} for k, v in pairs(frame.args) do table.insert(templateArgs, "<li>" .. k .. ": " .. v..." |
No edit summary |
||
| Line 2: | Line 2: | ||
function p.callTemplate(frame) | function p.callTemplate(frame) | ||
local templateName = frame.args[1] | local templateName = frame.args[1] -- Get template name from first argument | ||
local templateArgs = {} | local templateArgs = {} | ||
| Line 8: | Line 8: | ||
--[[ The module invocation is: #invoke:YourModuleName|callTemplate|Template:MyTemplate|arg1|arg2=value}} ]] | --[[ The module invocation is: #invoke:YourModuleName|callTemplate|Template:MyTemplate|arg1|arg2=value}} ]] | ||
for k, v in pairs(frame.args) do | for k, v in pairs(frame.args) do | ||
if type(k) == "number" and k > 1 then -- Exclude the template name argument | |||
table.insert(templateArgs, v) | |||
table.insert(templateArgs, " | elseif type(k) == "string" then | ||
templateArgs[k] = v | |||
end | |||
end | end | ||
return frame:expandTemplate{ title = templateName, args = templateArgs } | |||
end | end | ||
return p | return p | ||
Latest revision as of 23:11, 2 December 2025
Documentation for this module may be created at Module:Test template call/doc
local p = {}
function p.callTemplate(frame)
local templateName = frame.args[1] -- Get template name from first argument
local templateArgs = {}
-- Pass all arguments from the module invocation to the template
--[[ The module invocation is: #invoke:YourModuleName|callTemplate|Template:MyTemplate|arg1|arg2=value}} ]]
for k, v in pairs(frame.args) do
if type(k) == "number" and k > 1 then -- Exclude the template name argument
table.insert(templateArgs, v)
elseif type(k) == "string" then
templateArgs[k] = v
end
end
return frame:expandTemplate{ title = templateName, args = templateArgs }
end
return p