This script will convert WordPress XML exports (WXR) to the Ghost (1.x for now) JSON format. This JSON file can then be directly imported using the Ghost debug interface.
While there is a WordPress plugin that will export to the Ghost format directly, it only seems to work some of the time, and users of WordPress.com will have a hard time using it seeing how WP.com doesn't allow plugins at all (in its free account).
This is a simple command-line tool that takes a WordPress XML file as input and prints the corresponding Ghost JSON to standard out. It currently converts the following:
- Posts: title, slug, content, page/post, featured, status, creation/publication date
- Catgeories: name, slug, description (converted to tags)
- Tags: name, slug
WordPress authors are parsed, but not added to the output yet because Ghost currently only supports editing the primary user during imports.
To run it, you need to have NodeJS installed (and maybe also Python). You can then just run:
$ cd wp2ghost
$ npm install
$ node bin/wp2ghost.js <your-wordpress-xml> > ghost.json
Next, go to http://example.com/ghost, select Labs in the menu on the
left, and import ghost.json
. All your content should now show up!
Happy migrating!