I posted a question about a week ago re - any modules to convert b2evolution (1.8) and Wordpress (2.2) to Drupal 5.0. I didn't get any responses, probably because b2evolution is not as common as Wordpress.

Anyway, the upshot is, I've since written a little utility program (an .exe) which converts Wordpress 2.2 and/or b2evolution 1.8 to Drupal 5.0 rc1. (I suspect 5.0 rc2 would work as well)

What it does is convert all posts and comments from Wordpress/b2evolution to Drupal 5.0 rc1. From b2evolution it also copies across the 'number of reads' to Drupal.

I didn't bother with categories.

If anybody is interested I can forward on the utility program.

Steven Taylor
Melbourne, Australia

Comments

superjacent’s picture

I've just tested this utility against Drupal 5.0 rc2, it works (without modification). There appears to be no database changes from rc1 to rc2 regarding importing of other blogs.

For what it's worth, it's not necessary to import into empty Drupal database, the only requirement is that it's version 5 rc1 or rc2.

I've tested against Wordpress 2.2 and b2evolution 1.8.6, simply because they were the versions I was using. It's probably fair to say that my importer will import earlier versions as the field names all appear to be stock-standard names.

___________________________

Steven Taylor
Melbourne, Australia.

superjacent’s picture

This is a reply in response to http://drupal.org/node/69706#comment-193099.

Drupal 5.0 is now accounted for.

At this stage it only accounts for one user and I didn't bother with categories as they were not issues for me. I can see though that for others, multiple users and/or categories are issues. This should be an easy enhancement.

To reiterate, it's not a module that resides within the Drupal framework. It's an .exe file (Windows) though the source can be compiled to Linux and/or Mac. I can't test the Linux or Mac compiled programs.

In addition to the importing/converting procedure I also included a 'search and replace' component. Effectively I replaced all "http://yoursite.com/wordpress/" with a relative reference such as "./files/" (you get the idea). In my case I copied across my image folders/files from Wordpress and placed them within the 'files' directory of Drupal.

___________________________

Steven Taylor
Melbourne, Australia.

superjacent’s picture

I'm replying to http://drupal.org/comment/reply/69706/193430. (just trying to contain my bit to this thread).

I've started modifying the program.

Multiple Users

I've now accounted for multiple users. They will be stock standard 'authenticated users' within Drupal. Far easier to to manipulate their roles etc in Drupal after conversion.

Categories

Will work on categories next. Some food for thought. In Wordpress (2.2) it's possible to nest categories to numerous levels. I've also noticed in Wordpress that it's easily possible to delete a top level category and all the sub-categories are still categorised. I'm thinking it's far easier to transfer and convert categories that only have one parent category. The parent category will become the 'vocabulary name' in Drupal and sub-categories will be the 'terms'.

Permalinks

Not really sure how to handle this aspect. Come to think about it, as of right now, I've got no idea what they are (at least I'm honest). If it's the case of links within posts then a 'search and replace' addresses that.

Download

After this round of mods, I'll put a link up for the download of the converter.

___________________________

Steven Taylor
Melbourne, Australia.

d3p0’s picture

Permalinks are just the URL's of individual posts/pages/etc generated by wordpress. You see permalinks in your browsers address bar when you visit a specific post/page. The default wordpress permalinks look something like: www.mysite.com/?pageid=50. In the wordpress options you can change the permalink structure to include things like %year%/%monthnum%/%day%/%postname%/. The resulting URL might look like www.mysite.com/2005/09/19/this-is-a-post/.

As a feature, you would need to create aliases to associate the wordpress URL with the drupal URL (www.mysite.com/node/50).

The reason for wanting to keep permalinks from a wordpress site would be to maintain your inbound links and your sites presence in search engine indexes. I believe both of these things relate strongly to SEO and big impact on your search engine rankings and traffic.

Another note, sometimes wordpress is installed in a directory other than the root directory of a website. For example: www.mysite.com/blog might be your wordpress directory instead of just www.mysite.com/. It would be great (if you included permalinks) if the application allowed you to account for this.

Anyway, thanks for working on this application!

superjacent’s picture

My Wordpress (2.2) (and b2evolution 1.8) conversion program can now be downloaded from here

http://superjacent.net/cms/?q=node/474

I haven't addressed permalinks at this point in time. Thanks d3po for the explanation, I'm certainly looking at it.
___________________________

Steven Taylor
Melbourne, Australia.

d3p0’s picture

Let's urge Steven to add a permalinks feature!

superjacent’s picture

I thought this topic was dead and buried. Anyway, will now have a look.

Right at the moment I can't check it out, but from memory I recall an option within Wordpress that a user selects if a permalink is required. Further, from memory, I think the user has three options:- two of which are fixed (forget the style) and the third was a custom option. The third option is where replacement characters such as %date% (and a heap of others) can be used to construct the permalink. Obviously, the third option has to be accounted for but will require some thought.

Here's my initial conversion thoughts/process. Reconstruct the permalink based upon the Wordpress options, copy that link to each URL alias field of each node/post in Drupal.

In regards to permalinks, where dates (year, month, day) are included in the link, is it fair to assume the date referenced is the creation date of the post. If that post is modified, I'm assuming the permalink remains as it was.

I suppose I thinking out aloud at the moment. I'll have a look at it later tonight (Australian time).

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

Cathy Wang’s picture

I am very interested to see if someone can figure out how to migrate the permalink. I tried out the migration module and it was great; however, I would love to have the permalinks working.

The option in wp in regards to permalink, the 3 options:
default: ?p=123
date and name based: /2007/02/18/post-name
numeric: /archives/123

and of course...
custom: User can specify the format of permalink with these tags : http://codex.wordpress.org/Using_Permalinks

I hope you figure out something for the rest of us.

superjacent’s picture

I hate to speak too soon but I think I've got it worked out. Determining what permalink is in use at the Wordpress end is relatively easy. It's either ON or OFF. There are only 10 replacement tags to fiddle with, that is, parse the string (permalink structure) and insert the real data for each replacement tag. Simple enough but there are a few caveats to be aware of.

It should only be a couple of days away before I'm finished.

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

I've just uploaded my conversion program to my site. It's available for download here http://superjacent.net/cms/?q=node/502.

In a nutshell, it now includes copying across Wordpress permalinks. Further info at the download site.

Please advise of any issues.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

An updated version is available for download, version 5-02. (Don't ask me about the 5 bit in the version number, it just is).

It can be downloaded from here http://superjacent.net/cms/?q=node/502

Enjoy (I will get around to writing up a few pages regarding basic instructions).

Future plans are to account for post conversion, the merging of categories and users.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

Hetta’s picture

Windows only won't help us penguinistas ... is php only too difficult to implement? Thanks.

superjacent’s picture

The only reason the program/module is not written in PHP is because I'm still learning it. I needed to convert a few blogs (b2evolution and Wordpress) to Drupal. After a week of non responses re - conversion I decided to revert to what I knew (write and .exe program) to achieve what I wanted in the shortest possible time span. The time span involved to write the program took about a week and that was the bare bones conversion. Since then I've added some extra bits, sort of rounding it out more so.

I can compile to Linux (GTK 2+) and/or Mac. The only problem is I can't test those versions. My Linux is currently not working, or more accurately, I've got to re-install my dual bootloader, somehow. If you're willing to be a guinea pig I can certainly forward a Linux version. I would be interested to know if it works without a hitch. Someone else has offered to test a Mac version.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

misterh’s picture

I have been watching this develop on the site for a while. I am dying to convert my site but nervous about it going wrong. I'd be happy to test a Linux version for you. If you are having problems dual booting I'd be happy to help you out there.

Thank you for doing this. I believe it is an essential module. I'd be happy to write an article about this module if you would like.

Thanks again.

Rich Hughes
richATlinuxtechdailyDOTcom

superjacent’s picture

Okay, what I'll do, I'll upload the Linux version, that I've compiled, to my site. Please, please understand that I haven't tested this version. Hopefully in a couple of hours I'll have something up. When it's up it'll be here http://superjacent.net/cms/?q=node/502 just follow the download link.

An article sounds nice, lets see if the Linux version works first. For what it's worth, I don't think I've used any obscure Windows features so I'm hoping it should work right out of the box, so to speak.

In the meantime if you or someone could clue me up on how to install a dual bootloader (I used Grub last time) from Windows. My linux is Fedora Core 5 and from memory I updated a couple of times. My Linux resides physically on a second harddrive. The reason I don't have a dual bootloader is that I had to re-install Windows after a crash.

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

As mentioned in my previous comment, Linux is now uploaded at my site. Again, this is an UNTESTED version, it'll either work or crash. It can be got from here http://superjacent.net/cms/?q=node/502 and follow the download link.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

misterh’s picture

I hope to try it out tonight or tomorrow. If you don't mind dropping me an email at the address below, I can help you get back into your Fedora installation.

Thanks again,

Rich Hughes
richATlinuxtechdailyDOTcom (change all caps into the symbols)

superjacent’s picture

Sorry everybody, the Linux download link wasn't working. Just a simple spelling mistake in the link name. I've fixed it and the Linux version can be downloaded from here.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

raena’s picture

And the offer's still there for testing a Mac build. :)

superjacent’s picture

I'm working on a Mac compile but I've come across a little hitch, a missing Mac component in the compile process. Hopefully I'll sort it out soon and when I do I'll advise here.
___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

phin’s picture

So far tonight I've converted two test sites earlier tonight and everything looks great.
The users, posts, permalinks, etc... all came over.

I ran into one snag, with my data, but I was running a different version than mentioned above.
After working with Steven for a couple of minutes the problems were resolved and I'm off and running.

I ran a partial import / conversion (200 posts), with one of my larger sites and everything looks good.
I'll be going with the full conversion later this week, with upwards of 2,000 posts.

If you've got a Wordpress site to convert this sure beats running through a couple of upgrades. Especially if your site is already in place.

Thanks again Steven!

superjacent’s picture

No problems, I'm glad you found it useful. Let us know how you go with the 2000 posts.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

Cathy Wang’s picture

Hi Steve
Thank you for writing this. Thank you for all the help you have provided throughout my migration. My migration is successful and now I just need to style my drupal site nicely. http://www.everybrandnewday.com

You gave me awesome tips on the categories and I think they are going to come in handy. ( I think you should write out the tips on your download page)

Even though it's a .exe file, I don't mind at all. Mind you, I am a mac user and I only have a mac. I had to borrow someone's PC to actually run the .exe. Simply because this is the tool that will help me in my migration. The official drupal wp migration module only migrated to 4.6.

You were more than a huge help.
Thank you very much.

superjacent’s picture

Thanks for the compliment, no trouble at all. This weekend I'll make a start on writing up some basic instructions and tips at my site. Will probably use the Book/Page method.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

I've just uploaded the latest version of the Wordpress / b2evolution to Drupal 5 converter to my site. Further info here http://superjacent.net/cms/?q=node/532 and follow the download link.

In a nutshell I've attempted to address any problems that were occurring with massively huge source databases.

Linux is there as well, though is untested.

Happy converting...
--------------------------------------------------------
Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

I've just uploaded a Mac version. I'll stress right at the start, it's untested. Further details and download link are here http://superjacent.net/cms/?q=node/554.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

Following up from my previous comment regarding a Mac version now available and untested, well, it's now tested and does what it's suppose to do. I have to thank Raena. She sent me some screen shots of the progress which can be seen here. The last screen shot clearly shows that 5155 posts and 2747 users were transferred.

As far as the screen shots are concerned some of the font formatting is not as spiffy as it is on a Windows box, but other than that everything works. This can be clearly addressed for future versions.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

raena’s picture

For reals. This app converted over 5,000 wordpress posts and over 2,700 users (blog requires reg for comments) in less than five minutes. This on a build of an app that Steve hadn't even tested because he's one of those poor sods without a Mac.

What didn't come:
- teasers (alas)
- users' profile fields like their nickname
- everything was a blog when I wanted it to be a post, but that's easily search-n-replaced in SQL
- I had some funny charset related shiz but i'm not sure what was going on there.

superjacent’s picture

Thanks for your vote of confidence, much appreciated. The new version addresses the (should it be a blog, story or page) import. Teasers are handled differently but certainly utilize the Wordpress 'post_excerpt' field if data there exists.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

There's now a new version available for download from http://superjacent.net/cms/?q=node/558. Just follow the download link. For a brief overview of the changes they can be read here http://superjacent.net/cms/node/557.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

A new version, 5-06, is now available for download, details from http://superjacent.net/cms/?q=node/509 .

It basically fixes a minor glitch relating to the table prefix of the drupal database, if any.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

Wordpress converter, new version (5-07) available for download from http://superjacent.net/cms/?q=node/509 .

It now correctly (I believe) accounts for character encodings. Please advise of any encoding problems.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

c_boehm’s picture

The linux version cannot connect to database, but I used the windows version with wine and it worked. Thanks for the great tool!

superjacent’s picture

Thanks, I'm glad it worked for you, in the end. Which version of Linux are you using?

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

c_boehm’s picture

mysql version is 5.0.24a.

gurukripa’s picture

if this is a module to help people who join a Drupal site to get all their blogs into drupal..into the mother site..
also to integrate smaller sites into the bigger drupal one...

what do u think?

superjacent’s picture

Anything is possible and it could be a module of Drupal. As I've mentioned previously I'm not a PHP programmer and that is why I didn't write a PHP module. I moved from Wordpress/b2Evolution to Drupal and as like many I didn't want to lose my existing entries. Didn't have the time learn PHP and then write a module. Probably will never learn PHP thoroughly as I'm directing my attention towards Ruby on Rails.

All my converter does is manipulate the MySql databases (Drupal/Wordpress) directly. So rather than use PHP as a frontend to achieve this I used RealBasic to write the code.

I suppose I went off-topic a bit but to answer your question, yes it is possible to write a module with similar functionality as the converter. It would be the type of module that you would install, do your once-off conversion and then remove the module from your system (if you wished).

Next few weeks I'll be releasing another updated version, basically cleaning up things and removing the b2evolution import (appears no one uses that). The version after that will address post import issues such as merging categories and user's.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

Wordpress 2.3 is out. My converter will not work for this version. More here http://superjacent.net/cms/?q=node/717. Sorry, hope to address this but is not a short term solution as reasons explained at my blog.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

newmediaist’s picture

I just want to thank you as well for taking the time to write this software - I'm a Wordpress 2.3 user, which I know creates some issues, none the less its users like you that make the drupal community so awesome.

superjacent’s picture

Thanks, your comments are appreciated. I hope to work on this soon.

___________________________

Steven Taylor
Melbourne, Australia.
http://superjacent.net/cms

superjacent’s picture

There is a new home for the Wordpress to Drupal 5.x converter. All can be found here http://prime357.org and in particular the download page at http://prime357.org/node/23 .

Please note, in the next day or two I'll upload and release the source code for the program.

By the way, Prime357.org is my second site, solely devoted to programming/internet type stuff. I'm open to any advice re the site/content/idea etc.

___________________________

Steven Taylor
Melbourne, Australia.
http://prime357.org

JnnyDnti’s picture

But you dropped b2evolution? :(

I guess I'm the last person using b2e left . . . I may have to install WordPress, convert from b2e to WP, then WP to drupal. That should be a royal pain in the backside.

superjacent’s picture

Sorry.......

___________________________

Steven Taylor
http://prime357.net

Village Idiot’s picture

JnnyDnti -- could you outline which migration tools you used to go down this route? I am trying to migrate a b2evolution 1.10 blog to Drupal and would like to go down the path of least resistance!

superjacent’s picture

It's been a quite a while since I transferred my b2evolution blog to drupal, about 2 years ago. Back then it was b2evolution version 0.8 or 0.9. I used my conversion program to migrate and is still available (http://prime357.net/node/22) though is probably out of date now. The instruction manual for this version is here: http://prime357.net/node/1.

Unfortunately, I'm not in a position to update this.