Tag Archive: wordpress

Migrating from Posterous to WordPress

For the past few years I have used a site on posterous.  I liked posterous easy approach to posting via the web or e-mail and it’s ability to display photo albums.  Add to that the iOS and Android apps it was a great place to easily post, and not spread photos around a variety of services (twitpic, twitter, yfrog and others).

Then came the acquisition by twitter and the vague acquisition FAQ which makes it clear that at some point they will shut the service down.  This is when I decided it was time to stop adding more content to a site that eventually would have to move.

To migrate my content I used the Posterous Importer for WordPress (if you are hosted on wordpress.com it is there by default on self hosted you need to install).   I imported my posts to a new WordPress installation, and moved them all to a new category named ‘Posterous’.  On this blog I configured the same category and excluded it from my RSS feed to prevent spamming twitter and facebook when I imported them.   The WordPress to WordPress move took minutes to complete.

Not all of the images and videos embedded on Posterous moved correctly to fix the broken ones I enabled downloading on my Posterous site (Space Settings, Privacy Settings)

Checking the Show download links for media box, this allowed me to easily download all the original content and easily import it in to WordPress.

I probably could have waited a bit longer to see if they created a better export tool, but the existing tools worked well enough, and I now have all of my posts in one place.

 

Migrating from BlogSphere to WordPress Part 3 Why the Move

In my two previous posts I covered some of the technical elements of migrating my blog from a Domino based BlogSphere template, to WordPress, now I want to spend a few minutes talking about why make the move.

Back in February I blogged about the Future of Domino as a Blogging Platform, back then when I wrote it, and now, I believe Domino is an excellent platform to build a blog on, and having my Notes client (where I spend a good part of my day) also be my blogging client was a very nice feature.  The absolute killer feature of course is the local .nsf (database) giving me offline access to my blog design, configuration, and content, as well as the ability to create content with no connection.

So while Domino has many merits as a blog platform, lets look at what is missing, to start with themes, and plugins.  Take a look out there, there are thousands of themes, and plugins available for WordPress, some are free, some are for purchase, but you can very often find a tool you are looking for without having to start writing it from scratch, some example of plugins that I am running on my site

A-kis-met – prevents comment spam (in fairness never a problem I had using BlogSphere)

Simple Google Sitemap XML – Generates a valid Google Sitemap XML file

WordPress Mobile Edition – provides a mobile theme for my blog when viewed from mobile devices

In addition to this, I mentioned other plugins that were helpful to me in the migration process of my blog.

All of this is nice to have, but here is the real must have for me, mobile access to blogging.  WordPress has clients for iOS, Android, and Blackberry, allowing you to post content, as well as moderate and reply to comments on the go.  In addition anywhere you have a browser and internet access you have access to administer your blog.  WordPress also works well with off line tools like Windows Live Writer, Scribefire, Qumana, and other blogging tools, which provide the ability to write posts while disconnected.

Finally, while I do enjoy working with Domino, I do it every day as part of my job, it has been a few years since I have done any projects in PHP, and MySQL, it is always nice to have the opportunity to work with different technologies, which this moves gives me the chance to do.

I am not sure that WordPress is my final stop on this journey, I continue to watch Posterous, who continue to make publishing content easier all the time (and support migrating from WordPress), if their mobile tool offering was more developed I might have made the move there.  They just released their first iphone blogging client a few months ago, and have not released Android yet, though I believe it is in their plans.  Right now though WordPress seems to be the right place for me.

In conclusion I think I can summarize the reasons for my move like this

  • Access to a huge number of themes and plugins
  • Mobile tools
  • Learning, working with different technology then I do in my day job

Migrating from BlogSphere to WordPress Part 2 the import

In part 1 we talked about exporting data from the BlogSphere template, and prepping it for import in to WordPress.  This post will focus on importing the data in to WordPress, and is not really specific to importing from BlogSphere, this applies to any valid WordPress Import File.

If your WordPress installation does not already have it, you will need to install the WordPress Importer Plugin, the first thing you want to check is that the size limit for uploads is larger then your import file:

Import_WP

If you need to increase the upload limit there is some useful information here on how to, but if you are running on a hosted server, you might need to contact your provider to increase the limit.

Once that is done select your file, and choose Upload File and Import, after the file uploads you will be prompted to select a user for the imported posts.  I suggest that you set up the user you plan to use to author posts before importing, and select it, so that all you old and new posts appear under the same author.

WP_Select_author

Click Submit and watch your posts import.

Plan on running your import more then once, as you see what worked and what didn’t you will probably tweak your import file, a few times before getting it right.  You also probably plan on testing the import and finalizing your site design before actually getting ready to make the move.  I found a Bulk Delete plugin that made the process of deleting all the posts to import again much easier then using the native delete functionality.  Be warned, the bulk delete plugin works exactly like it sounds, making it extremely easy to delete all your content, the first thing I did after my final import was delete that plugin from my WordPress installation.

Another useful plugin I found is Tidy Up which will run all of your HTML through and clean it up using HTML Tidy.

Next up was to check to make sure that my RSS feed was valid, I used this Feed Validator, to check mine.  I found that some of the posts had excerpt data causing the validation to fail, I solved this by simply clearing out all of the post excerpt fields from the database (this has no impact since I publish full posts on the blog and to RSS, not excerpts).  Here is the SQL code I used to accomplish this, note your table name might be different:

“UPDATE wp_posts set post_excerpt =  replace (post_excerpt, ‘<![CDATA[]]>’, ”);”

Another check of the Feed Validator, and I had valid RSS.

One other word of warning, if you have draft posts in your BlogSphere database, they import to WordPress as published posts, not as drafts, so you either need to clean them up from your database before exporting, or if you want to save them you need to manually set them back to draft status after importing.

That is it for importing in to WordPress.

Migrating from BlogSphere to WordPress Part 1 the tools

Over the weekend I migrated my blog from a Domino based blog running v 3.0.2 of the BlogSphere template to WordPress.  This is the first of a few posts about the migration process, this post will cover the tools used to accomplish this move.

The process I am describing worked well for me, your mileage may vary, the tools which are being made available (see the bottom of the post for download details), are provided as is, with no guarantees.

The biggest challenge was to get the data out of the BlogSphere template into a format that could be read and imported in to WordPress.  Matt White was kind enough to share an agent he wrote to export blog posts and comments into an xml file.  After importing the agent in to the template, from the action menu run Export to WP.  Watch the Status Bar on the bottom for progress.

exporttowordpress

This will generate an XML file, the agent by default is set to dump the file in to the root of C:\, if you want it somewhere else you will have to change it in the Agent.

The next step is to fix the formatting of the file, the outputted XML is valid, but WordPress is a little picky about how it wants to see it.  The easiest way to do this is to open the file in Eclipse and press CTRL-SHIFT-F, depending on the size of your file, it could take a few minutes to format.

The next step is to fix the header, the exported file header  will look like this

origheader

You need to replace the header with this xml (available for download in a file see the end of the post) in order for WordPress to be able to import it.

replheader

At this point the file is technically ready for import in to WordPress, but there are a couple of other issues you may want to address.

The first issue is images in blog posts, one of the nice features when blogging in Notes, is the ability to simply drag and drop an image in to a post, well these images are now all exported as HTML, but pointing to your domain, if you import them as is, and then subsequently change your domain to point to your new blog your images will all be broken.  To solve this problem before I imported I replaced “img src=”https://www.curiousmitch.com/” with “img src=”http://www.oldblog.curiousmitch.com/” as for the time being I have left my old blog running resolved to http://oldblog.curiousmitch.com, the images continue to work.  If I ever decide to remove the old blog completely I will have to revisit this, but for now it works.

The second issue is that the formatting of the exported posts are not perfect, for some reason there are Carriage Returns and Line Feeds inserted at random points which when imported into WordPress were translated as Line breaks “<br>“ which meant two things, 1. some posts when imported are not formatted correctly – a minor issue, which you could manually fix in posts that really bother you, 2. some of the “<br>” tags were inserted in the middle of HTML elements, like images, causing images not to render, and the RSS feed to be invalid.  This was a tricky one as you can not simply remove all of the Carriage Returns from the file as some of them are needed for the XML to remain valid.  A colleague of mine was kind enough to write, and allow me to share a small utility which removes all of the Carriage Returns and Line feeds from the post sections of the XML only.  The result of which is valid XML, and cleaner imported posts.  The utility is named ExportXMLCleaner.exe and is simply run from a command line

runexportcleaner

which will produce a new file names output.xml, this is the file you want to import in to WordPress, if it is not already included in your WordPress install you will need the WordPress Importer plugin to import the file.

Download Information

Export Tools

Contents:

exporttowordpress.lss – Export to WP Lotuscript Agent (Shared with Matt’s permission)

ExportXMLCleaner.exe – Utility to clean CR/LF from export file as described above

header.xml – header to use in the export file