Module:RecursiveSelectiveList

From Ikwipedia
Revision as of 07:25, 22 December 2024 by EnWikiAdmin (talk | contribs)

Documentation for this module may be created at Module:RecursiveSelectiveList/doc

local p = {}

function p.main(frame)
    local categoryName = frame.args.categoryName or "Category:Books" -- Default category
    local limit = tonumber(frame.args.limit) or 10 -- Default limit

    local category = mw.title.new(categoryName)
    if not category or not category.exists then
        return "Error: The specified category does not exist."
    end

    local members = category:members()
    local result = {}
    local count = 0

    for page in members do
        table.insert(result, "* [[" .. page.title .. "]]")
        count = count + 1
        if count >= limit then
            break
        end
    end

    return table.concat(result, "\n")
end

return p