Added Wordpress.com migrator

This commit is contained in:
Matt Hall 2010-09-02 13:36:31 +01:00
parent 3fa9af17fa
commit b6678d4e43
1 changed files with 38 additions and 0 deletions

View File

@ -0,0 +1,38 @@
require 'rubygems'
require 'hpricot'
require 'fileutils'
# This importer takes a wordpress.xml file,
# which can be exported from your
# wordpress.com blog (/wp-admin/export.php)
module Jekyll
module WordpressDotCom
def self.process(filename = "wordpress.xml")
FileUtils.mkdir_p "_posts"
posts = 0
doc = Hpricot::XML(File.read(filename))
(doc/:channel/:item).each do |item|
title = item.at(:title).inner_text
name = "#{Date.parse((doc/:channel/:item).first.at(:pubDate).inner_text).to_s("%Y-%m-%d")}-#{title.downcase.gsub('[^a-z0-9]', '-')}.html"
File.open("_posts/#{name}", "w") do |f|
f.puts <<-HEADER
---
layout: post
title: #{title}
---
HEADER
f.puts item.at('content:encoded').inner_text
end
posts += 1
end
"Imported #{posts} posts"
end
end
end