Migrating from Wordpress and PHPNuke to Drupal

I've had the wonderful opportunity to merge and migrate two projects for European Copper Institute into one portal: Leonardo-Energy.org. One was a blog based on Wordpress, the other was an informative site in PHPNuke. My job was to join these two projects into one Drupal set-up, migrating all the content, users and files, adding new features and increasing the userfriendliness.

Which Drupal version?

With Drupal 4.7 released just two months ago, I had to decide wether to stick with the trustworthy 4.6 version, or to go with the 4.7 flow. There are two reasons that made me choose for 4.6:

With the fairly large amount of PHPNuke module to migrate, I opted for the latest Drupal 4.6 version to get as much support for 3rd party modules as possible since not a lot of modules are upgraded to function with v4.7 yet. I would have loved to use the new search for instance, but the modules I needed included disknode, faq, nodelist, tagadelic and weblink.

The second deciding factor was that the host was running MySQL 3.23 and not MySQL 4.x as adviced for Drupal 4.7. Even with v4.6 supporting this older version of MySQL, I had to make some minor adjustments to some modules to gain full compatibility. For instance the taxonomy_image_display function in the taxonomy_image module had a query reworked:

Current query:

SELECT i.path, d.name FROM {term_image} i INNER JOIN {term_data} d WHERE i.tid = d.tid AND i.tid = %d

To new query:

SELECT i.path, d.name FROM {term_image} i, {term_data} d WHERE WHERE i.tid = d.tid AND i.tid = %d

Migrating the data

I imported the data in pretty much the same way as described in my Migrating to Drupal: database migration article. Migrating from Wordpress was pretty easy and straightforward. The PHPNuke installation on the other hand had quite a few modules installed like faq, links and encyclopedia. I created seperate scripts for each of the modules, converting faq to drupal faq, links to drupal weblinks and encyclopedia to drupal nodes linked with nodelist.

Creating the right menus (blocks) and putting them into place would prove to be a harder nut to crack. A tad of php code in each block combined with the already wonderful technology of blocks, I quickly had an easy to use system with a subsite for each category, each with its own subcategories. Now it is just a matter of assigning the right taxonomy to each article, be it a story, a page, and image or a poll, to have it show up on the right subsite.

Credits

Thanks to Ber Kessels, the author of the tagadelic module for helping me customize it. Thanks to Michiel Hendriks, the author of the Disk Node module for a quick fix regarding the node settings not saving correctly. The theme is based on Democratica by Chris Messina.

Promote this article on various sites:

Comments

See

See http://drupal.org/node/498 for phpnuke->drupal help.
W

Post new comment

The content of this field is kept private and will not be shown publicly.