Moving

This is a post I had written on my old Tumblr, and since that site is now gone I am re-posting it here. Which is kind of funny, since I came full circle and love being back on WordPress, but someone out there may still find this useful…

When I had previously decided to migrate to Tumblr, there were a few key obstacles to overcome:

  • There is no direct method of importing WordPress posts into Tumblr.
  • I wanted to preserve all the tags associated with the WordPress posts as they were transferred over.
  • I did not want previous comments lost.

The final point was resolved with Disqus, but what of the other two?

In the end, I wound up being able to do this, but it was a bit involved.  It entailed exporting my WordPress site to Blogger, then using a special online tool to migrate the Blogger site to Tumblr.

Here’s what I did:

  1. Export your WordPress blog to an XML file.  For self-hosted WordPress sites, after logging in to your WordPress account, go to the Dashboard, and down along the sidebar you will see the Tools link.  Click on this, and you will see an Export option.  It’s pretty straightforward after this.
  2. If your XML file is less than 1MB in size, you can go to this site in order to convert the WordPress XML file into a Blogger-compatible XML file.  Then go to step 4.
  3. If your XML file is larger than 1MB in size, you’ll need to try the following. Bear in mind that you can probably do the following in less steps, but I am going to explain how I did it, what worked best for me, and you can adjust from there.
    • It would be best if you had a text editor that can deal with multiple, large files easily; I’m partial to Notepad++.  Also, make a backup copy of your WordPress XML file.
    • Take your XML file and open it in your editor of choice.  You’ll see a bunch of text at the beginning explaining what the XML file is.  As you scroll down, you’ll see comments / syntax, and you’ll see your blog information (such as title, etc.), along with the categories and tags listed.  Scroll down through your listed tags until you see the line <item>.  This signifies the beginning of your posts in the XML file.  What you’ll want to do is take everything from the beginning of the XML file down to just before the first <item>listing and copy that to a new text file.  Call it whatever you want; I’ll be using the name xmltemplate.txt for this article.
    • Scroll down to the very bottom of your XML file.  You’ll see the last two lines are </channel> and </rss> (on separate lines).  Copy these two lines to the end of your xmltemplate.txt file (hit enter a few times to leave space between these two lines and the larger block of text you copied in the previous step).  Save this file.
    • Keep your WordPress XML file open.  Copy the contents of your xmltemplate.txt file to a new text file.
    • Now, remember that first <item>heading we found earlier in your WordPress XML file?  What you’ll want to do is start copying from that point (including the <item>) on down.  How much you copy depends on how large your XML file is; what you’re looking to do is create a new XML file that is less than 1MB in size so that you can import it to be translated to a format Blogger can understand.  So if your WordPress file is 2MB in size, you may need to create 2 or 3 smaller XML files using this process. What iscritical is that you end your selected text at an </item> tag, which denotes the end of a post, before copying.
    • Take the text you just copied and paste it into your new file containing the xmltemplate information.  You will want to paste it in just before the</channel> tag, in those extra returns I told you to enter earlier.
    • Save this new file with a .xml extension (WP1.xml, for example). Make sure that it is not greater than 1MB in size.
    • Repeat the above steps, taking the text from your xmltemplate.txt file and pasting it into a new text file, and then copying posts from where you left off in the WordPress XML file beginning with the <item> tag.  Remember: always start copying at an <item> tag, and end your selected text at an</item> tag.
    • Once you are done breaking your WordPress XML out into smaller files, you can go to this site in order to convert the WordPress XML files into Blogger-compatible XML files.  Note:  after converting a file, verify the size of the new XML file.  It should be comparable in size to its counterpartWordPress XML file.  If the resulting Blogger XML file is tiny (around 1K), open the file up in a text editor and you should see it contains an error.  This means that the XML file you tried converting was improperly formatted.  You will need to go back and double-check that you followed the above steps correctly, fix any missing tags, and try converting it again.
  4. Go to the Blogger Dashboard. If you do not have a Blogger account, set one up.  Otherwise, create a new, basic blog.  Once created, go into its Settings.  Under the Basics heading, you’ll see a link near the top that says Import Blog.  Click on this, and follow the instructions to choose the Blogger-compatible XML file you created in step 2 or 3.  Make sure to check the box Automatically publish all imported posts.  Once you click the Import Blog button, it will take a few moments for the process to complete.  Once it has finished, click on the Dashboard and verify that the blog entries have been properly published and retained all the tags.  If you have multiple XML files to import, repeat this process until you have imported all of your posts.
  5. Once your temporary Blogger site is ready, go to this site, which is an online tool for importing Blogger sites into Tumblr.  Follow the straightforward on-screen instructions to complete your journey.  Note: for those uncomfortable with supplying your Tumblrpassword, just change it beforehand and change it back after the process is complete.  That’s what I did.
  6. And now you should be done.

One tip:  make sure that you turn off the option to send updates to Twitter before you import your posts.  Outside of tweeting a number of old posts, I unwittingly went over my Twitter limit because I forgot to turn off this option before the import.

And there’s my experience with moving over from WordPress to Tumblr.  I’ll probably be tweaking this “guide” in the future; if you find it useful, feel free to drop me a line.  If you have any tips / suggestions, let me know and I’ll update the guide accordingly.

Advertisements