Drupal 6, 7, or 8 – What you need to know as a site owner

Maybe your site is already built on Drupal and you’re considering an upgrade. Maybe you are considering Drupal for the first time. You’ve done some research and hit your first wall – What version of Drupal should you consider?

You’re not alone. Visiting Drupal.org, the choice looks simple. Drupal 7. There are banners and buttons and headlines that all direct you to choose version 7 for your site. But wait – you were on a message board, or Google, or somewhere and saw someone mention version 8.

Well, why would you choose version 7 if 8 is right around the corner? Even the download page for Drupal 6 and 7 directs people to the Drupal 8 initiatives group page. Talk about confusing for anyone up against this decision.

The fact is, Drupal 8 is a long way off – at least 18 months, actually. Version 8 is in development, yes, but there’s a long road ahead before a release will be available for your web site. Drupal 7, which had it’s first release in January 2011, hasn’t even reached its adoption peak yet and that’s because of a number of reasons:

  • Many of the contributed modules that are available for Drupal 6 still aren’t ready for Drupal 7
  • The architecture changed in Drupal 7 and some functionality provided by contributed modules has been included in core Drupal. Some related modules may not work with Drupal 7.
  • It is easier and more cost effective to develop for Drupal 6 because there are established development recipes for common feature requests
  • Drupal 6 is still supported and works great
  • Some argue there’s a steeper developer learning curve for Drupal 7 over Drupal 6

So, with Drupal 8 not even an option at this point (despite what rumors are floating around the internet), why on Earth would you choose an older version of Drupal?

For new sites, use Drupal 7

You should consider choosing Drupal 6 if there’s a key piece of functionality you need that isn’t available for Drupal 7, and it would cost more to build it than to use something already available for Drupal 6 (of course it’d be great if you could help port it to Drupal 7 and contribute it to the community!).

If you’re building your first Drupal site and you’ve already mapped out the site requirements and everything you need can be accomplished with Drupal 7, there’s no question – you should use Drupal 7. You’ll have the most up-to-date version of Drupal that is available and you won’t have to think about major upgrades for quite a while, probably years.

What it means to upgrade

If you have an existing Drupal 6 site and want to upgrade to Drupal 7, this part’s for you.

It’s important to know, up front, what you’re getting into when upgrading. Upgrading between major Drupal versions is more complicated than the incremental maintenance updates to modules and Drupal core that you probably already do. The underlying data structures change and in most cases there’s some development effort required to make your existing site’s theme compatible with the new version.

Depending on the level of customization on your existing site, this can take a long time. Not only that, but if some data doesn’t update smoothly it may need to be migrated by hand. Have a qualified development team do an assessment of your current site to determine how difficult an upgrade will be.

Does your current D6 site let you upload files or images using CCK’s filefield module? What about other fields like user references or node references? This is a great example of the difficulties inherent in major version changes. Unless you download and install CCK’s Drupal 7 dev branch, which you’ll later remove, to migrate this old field data to D7, you’ll have content with missing field data. Depending on what modules are enabled on your site, you may have to overcome these types of upgrade challenges for each of them.

Is it time for a new look?

If you’re already planning to update the look of your site, it could be the perfect opportunity to upgrade your Drupal 6 site to Drupal 7. Even if you’re not planning on adding new bells and whistles to your site, a redesign will require a new site theme to be developed. Depending on the complexity of your existing site it might make more sense to develop the new theme for Drupal 7’s framework instead of Drupal 6. Just check with your development team to make sure that all of your existing functionality will carry over after the upgrade.

Conclusion

New Drupal sites should be built with Drupal 7, unless a piece of custom functionality makes it cost prohibitive. Site owners wanting to upgrade from D6 to D7 in preparation for Drupal 8 might want to wait – Drupal 6 hasn’t gone stale quite yet. Finally, site owners that are ready for a design refresh should consider Drupal 7, but get an expert assessment to find out if it makes sense to upgrade.