×
Create a new article
Write your page title here:
We currently have 6 articles on NOISZ Wiki. Type your article name above or click on one of the titles below and start writing!



NOISZ Wiki
6Articles

Module:Bluesky RSS Feed Test: Difference between revisions

No edit summary
Tag: Manual revert
No edit summary
Line 4: Line 4:
function p.main(frame)
function p.main(frame)


local args = frame:getParent().args
local posts = {}
local posts = {}
posts["description"] = {}
posts["pubDate"] = {}
posts["link"] = {}
local rss_table = {}




local rss = mw.ext.externaldata.getWebData {
local rss = mw.ext.externaldata.getWebData {
     url = 'https://bsky.app/profile/did:plc:ve2p3lz33ivtyikqztvsgtx3/rss'
     url = args.url
   , data = {pubDate = 'pubDate', description = 'description', link= 'link'}
   , data = {pubDate = 'pubDate', description = 'description', link= 'link'}
   , format = 'xml'
   , format = 'xml'
Line 18: Line 15:
for k, v in ipairs(rss) do
for k, v in ipairs(rss) do
if string.find(v["description"],"NOISZ") and v["description"] and v["pubDate"] and v["link"] then
if string.find(v["description"],"NOISZ") and v["description"] and v["pubDate"] and v["link"] then
local new_post = {}
table.insert(posts, frame:expandTemplate{title = 'Bluesky RSS Feed Row', args = {description = v["description"], pubDate = v["pubDate"], link=v["link"]}})
new_post["description"] = v["description"]
new_post["pubDate"] = v["pubDate"]
new_post["link"] = v["link"]
table.insert(posts,new_post)
end
end
end
end


for k, v in ipairs(posts) do
return table.concat(posts,"")
rss_table[k] = frame:expandTemplate{title = 'Bluesky RSS Feed Row', args = {description = v["description"], pubDate = v["pubDate"], link=v["link"]}}
end
 
return table.concat(rss_table,"")





Revision as of 13:46, 6 June 2025

Documentation for this module may be created at Module:Bluesky RSS Feed Test/doc


local capiunto = require 'capiunto'
local p = {}
function p.main(frame)

local args = frame:getParent().args
local posts = {}


local rss = mw.ext.externaldata.getWebData {
    url = args.url
  , data = {pubDate = 'pubDate', description = 'description', link= 'link'}
  , format = 'xml'
}
for k, v in ipairs(rss) do
	if string.find(v["description"],"NOISZ") and v["description"] and v["pubDate"] and v["link"] then
		table.insert(posts, frame:expandTemplate{title = 'Bluesky RSS Feed Row', args = {description = v["description"], pubDate = v["pubDate"], link=v["link"]}})
	end
end

return table.concat(posts,"")


end

return p