class MediumExtension
Extension namespace
Public Class Methods
new(app, options_hash={}, &block)
click to toggle source
Calls superclass method
# File lib/middleman-medium/extension.rb, line 9 def initialize(app, options_hash={}, &block) super require 'rss' require 'nokogiri' end
Public Instance Methods
fetch_medium_posts()
click to toggle source
# File lib/middleman-medium/extension.rb, line 15 def fetch_medium_posts medium_rss_parser(open(options.source).read) end
medium_rss_parser(feed)
click to toggle source
# File lib/middleman-medium/extension.rb, line 19 def medium_rss_parser(feed) posts = [] rss = RSS::Parser.parse(feed, false).items rss.each do |item| posts.push(rss_item_to_hash(item)) end posts end
rss_item_to_hash(item)
click to toggle source
# File lib/middleman-medium/extension.rb, line 28 def rss_item_to_hash(item) document = Nokogiri::HTML.fragment(item.content_encoded) { title: item.title, date: item.pubDate, url: item.link, category: item&.category&.content, img: document&.search('img')&.first['src'] } end