thoughts and works

Mephisto to WordPress

An easy way to import a Mephisto blog into WordPress is by using a Python script for extracting a WordPress-friendly WXR file from Mephisto (which can be imported via the WordPress web admin interface), which eventually worked like a charm. I had to modify it to use MySQL, and to look at a different date field for publication (my Mephisto install was returning Null in the field m2wp.py was looking at).

  1. Go grab m2wp.py.
  2. Download m2wp-mysql.diff. (Update 6/6/08: fixed the missing trailing newline)
  3. Run patch m2wp.py m2wp-mysql.py.diff -o m2wp-mysql.py.
  4. Now you can run python m2wp.py -h and you’re off and running!

A less effective method is to transform Mephisto’s Atom feed into RSS, and import that into WordPress. This is a pain, because the feed does not contain comments, but here is how I did it before I discovered m2wp.py:

  1. Get the XMLStarlet command line XML toolkit.
  2. wget http://atom.geekhood.net/atom2rss.xsl
  3. wget http://mymephistoblog.com/feed/atom.xml
  4. xml tr atom2rss.xsl atom.xml > rss.xml
  5. Go to http://mywordpressblog.com/wp-admin/admin.php?import=rss
  6. Import your rss.xml
  7. Pull comments over by hand.

11 Responses to “Mephisto to WordPress”

  1. edbury says:

    It looks like the .diff file isn’t working for me. Any chance you can post the alter script?

  2. [...] Jason Morrison ran into the same snag and did up this little number, a diff patch to fix up the python script for use with MySQL. Unfortunately, the patch ends [...]

  3. Paul says:

    Hi, I’m trying to convert also- it looks like your patch file is incomplete though- could you please email me the finished python script please?

    Thanks!

  4. Hey folks - thanks for the comments. I’ve fixed the patch file, hopefully this is still useful for someone.

    Cheers!

  5. [...] here is how I did. First, after Googling alot I crossed Jason’s blog. Grab the script and apply the patch you’ll find there, then run it, on a UTF-8 database. If [...]

  6. Marc says:

    Worked like a charm :D Thanks

  7. [...] To convert the posts and comments from Mephisto, I used the python script that can be found over here [...]

  8. [...] Wordpress on Ubuntu 8.04 TLS 64-bit (I hear all the cool kids are using Ubuntu now), and used this script to migrate all my blogdata from [...]

  9. [...] to the WordPress database in a jiff. What I’m talking about is a python script I got from jayunit.net. You can follow the instructions on that blog to set it up. If you are MySQL backed, then you would [...]

  10. [...] do that to you I guess). The migration from Mephisto to Wordpress was very very smooth, thanks to this excellent article. The Mephisto version I was running was producing a Rails error based on some spam message which [...]

  11. [...] at schwuk.com who published the script and a bzr branch. Jason Morrison added MySQL support and published a [...]

Leave a Reply

Powered by Wordpress | Designed by Elegant Themes