Input Desired - What would you like to see in a WordPress to BlogML converter?

Jul 24, 2010 at 12:24 AM

I've started a project to create a WordPress to BlogML converter.  It's somewhat self-serving, as I have several blogs I'm interested in converting, and couldn't find a good solution available.  While BE.net wouldn't be the only customer of the output from this project, I know that this user group is knowledgeable about what would be good from a user standpoint.

So, the first thing I need to decide is which end to target.  Currently, I'm kicking around two options.  They are below; please reply and let me know which you think would be more valuable.

Option 1 - Create a plug-in or theme for WordPress that will utilize WordPress to send the output to either the browser or the filesystem.

Pros: Most(?) WP bloggers know how to install a plug-in.  It's a non-geek solution.
Cons: Would be written in PHP.  On larger blogs, it could run into problems with resource limits (memory/execution time) that cannot be overridden on shared hosting plans.

Option 2 - Create a process that reads the MySQL database backend of WordPress directly.

Pros: Eliminates possible WP interference between data and output.  Would be written in C# (which could be extended to automatically import into BE.net and other destinations).
Cons: Requires database access - for shared hosts, this wouldn't work unless the user did a backup-and-restore to their local machine (a much more "geeky" solution).  If a user is going from shared-Linux to shared-Windows hosting, this may not be as easy as option 1.

Of course, both options are subject to WordPress changes; that's a given.  Option 2 would only be subject to database changes, while Option 1 would also be subject to internal representation within WP's PHP code.  Personally, I'd prefer option 2; I think that somebody that knows enough to want to do this migration would probably have a level of knowledge such that getting a backup wouldn't present a challenge.

What do you think?  Let me know!

Coordinator
Jul 24, 2010 at 5:02 AM
Did you consider working with WPs extended RSS? Take a look for example: http://www.visualsoftware.net/Blog/post/2009/10/27/WordPress-eXtended-RSS-to-BlogMl-converter-WXR-2-BlogML.aspx
Jul 25, 2010 at 2:48 AM

That's pretty cool.  I think that WXR may have changed since he wrote his initial q&d process, but using WXR as the source would be simple for a non-geek user.  :)

Jul 26, 2010 at 4:37 AM

I've been able to make some good progress on this over this past weekend.  I've got the main infrastructure laid, and the code now exports the main blog information and the categories.  The project is at http://wpblogml.codeplex.com.

Jul 27, 2010 at 5:45 AM

I've gotten everything except attachments done now (which I don't need for my purposes, as I'm going to swap the blogs in-place; images will still be where they are today).  The BlogML actually validates in the blog importer!  However, the blog importer isn't recognizing my blog as valid.  Is there anything special that needs to be set up for that to work?

Jul 31, 2010 at 4:48 PM

I've just released version 0.5 of the WordPress BlogML Export project.  I still haven't been able to get it to import to BE yet (even when running BE on Windows), so I was going to check out the source for the blog importer and see what it's doing.  That way, I can determine if what I've made isn't working, or if there's an issue with the blog importer.

I've also done a manual migration of my tech blog (which was fine, since the blog is small, and links to other posts within it), and will probably implement the redirection to it sometime today.  It's moving from http://djs-consulting.com/linux/blog (running WordPress) to http://techblog.djs-consulting.com (running BE).  I still need to work on the CommentView.ascx for the theme, and work out the XHTML compliance (even though the badge is already there), so if I don't get that completely done, it won't be there.  I plan on writing about BE there once I get it all transitioned.  I'm excited!

Coordinator
Jul 31, 2010 at 7:43 PM
Just keep in mind that BlogML importer has been moved from one click app into Core.API..BlogML. One click still works, but it won't be updated going forward.
Jul 31, 2010 at 11:47 PM

Will I need to get it from source to see that?  If it's part of core in the next release, I probably won't even fiddle with the click-once.  The click-once does say that the BlogML is valid, but it doesn't do anything when I run the import on it.  For my purposes, if I could just see a good import of that file, that would take me a long way towards being able to suggest that some of my clients take a look at this.

Coordinator
Aug 1, 2010 at 10:33 PM
http://blogengine.codeplex.com/SourceControl/changeset/view/e291ce8b578c#BlogEngine%2fDotNetSlave.BusinessLogic%2fAPI%2fBlogML%2fBlogReader.cs