I just migrated this blog from a self-hosted Wordpress site to a Pelican statically generated blog. It took me a whole weekend to do it because I have almost 600 posts. Much is still broken at the moment but at least the site seems presentable so I pushed it through. The fixes will just have to wait.
I considered using Jekyll as it appears to be the most popular static site generator. A look at its github page though shows no patch has been made for months. Development on Jekyll appears to have paused for some reason. Furthermore, I didn't have much luck getting exitwp, which is a wordpress xml to jekyll importer, to gracefully parse my many custom posting tags. I also gave Ruhoh a quick trial, but it also relies on exitwp to import wordpress posts.
Then I found that Pelican had its own importer tool using pandoc, which I tested works much better for the non-standard tags in my posts.
In any case, here are the steps I took to migrate to Pelican.
- Export Wordpress into a XML file
- transfer comments to Disqus
- install Pelican 3.0.0 dev build
- use pelican-import to convert the XML file into markdown posts
- moved some posts around into its directory/category
- use Textmate to do a bunch of batch fixes
- configure Pelican and made a Makefile
install ghp-importrolled my own gh-pages script into Makefile- customised a pelican theme
- setup Github for custom domain
- updated DNS
After all of that, this site is now hosted and served on github.