We got a lot of questions last year like: can I build a new project on Drupal 8? What do I have to do with my Drupal 6 install when Drupal 8 is released? Do I have to upgrade my Drupal 7 install when Drupal 8 is stable.
We see these sorts of questions more and more, because Drupal 8 will have a stable release in the foreseeable future. And that means end of life for Drupal 6. So what to do?
You want to live the future without dragging the past behind you, Drupal 8 does that very well. It's completely rebuild from the ground up and has a lot of cool features:
- Responsive, also backend.
- Better content management experience, including inplace editing
- RESTful web services
- Object oriented code
- Native schema.org support
- 100% multilingual
- And lot's more
Drupal 8 is not backward compatible, I think that's a good thing: you don't want to drag legacy stuff behind you. That's a big bucket on your boat.
So is it necessary to upgrade your current Drupal 6 or Drupal 7 to Drupal 8? Considerations for:
- Drupal 6 to Drupal 8
- Drupal 6 to Drupal 7
- Drupal 7 to Drupal 8
- Tools for upgrading to Drupal 8
Generically spoken, to what degree a Drupal upgrade process is difficult depends on the initial Drupal website builder. If that party knew what they were doing and took a future upgrade into account, than I guess you'll be quite safe. But if that party duct-taped and Cable tied your Drupal site... then you might have a bigger challenge.
1. Drupal 6 to Drupal 8
Drupal 6 - RIP (almost)
Community support for Drupal 6 ends when Drupal 8 gets released, just like with Drupal 5. If you are running on Drupal 6 it won't say 'kaboom!' immediately, but you should have a plan to upgrade to 7 or 8.
Drupal 6 site data (source):
About 20% of total Drupal sites is Drupal 6. Good to know: Drupal 6 will have 3 additional months of security support when Drupal 8 is released. So Drupal 8 modules can mature some more and an upgrade will be smoother. See also.
Simple Drupal 6 websites
With a simple Drupal 6 website I mean a 'brochure' website. In this website you have a couple dozens of pages with some static information and maybe a blog about your organization, company or personal activities. So there are no complex functions like an online community, webshop or social intranet/extranet. The project costs initially were 40~200 hours.
If you have such a Drupal 6 'brochure' site, then Drupal 8 will probably be a good candidate, as it has a lot of features out of the box and chances are you can don't need extra modules. So upgrade to Drupal 8 asap will probably the best step.
More complex Drupal 6 websites
A more complex Drupal 6 website would be an online community, a webshop or a Drupal social intranet. There are contrib modules installed and additional custom modules. The project costs initially were more than ~ 300 hours.
In this case you probably need extra modules in Drupal 8 to migrate your system. When those modules are not yet migrated then you can wait for them. But it's kind of uncertain when they will be migrated and stable. A status overview of Drupal 8 modules.
When it's clear that the needed modules will be ported to Drupal 8 in the foreseeable future then maybe it's best to wait for that and migrate asap after those modules became stable. If they are not migrated in the near future, then take a look at what Drupal 7 has to offer (see below).
If your needed functions are also not available in Drupal 7 modules, then you have to build it custom. It's seems wise to do that in Drupal 8.
2. Drupal 6 to Drupal 7
When Drupal 7 was released, we waited a few months with migrating Drupal 5 and 6 sites. As soon as the necessary modules were ported we upgraded the sites.
Drupal 5 data (source):
If you can't wait until the necessary modules are ported to Drupal 8, then upgrading your Drupal 6 system to Drupal 7 is an option. Of course the modules must be available in Drupal 7, stable.
Drupal 8 is almost 5 years in development, if this continues then Drupal 7 will be supported for a long while. Including the extra 3 months security support Drupal 7 will be supported until ~ 2019. This is a rough estimate; Drupal 9 will probably not be in development for 5 years, since it will not be build from the ground up.
3. Drupal 7
Al lot of arguments described above also apply to a Drupal 7 website. It really depends on the complexity of your system: how much custom and contrib modules you implemented. The more complex the site, the less smooth an upgrade to Drupal 8 will be.
Since Drupal 7 probably will be supported for the next 3~4 years, I see no maintenance reason to switch to Drupal 8. But if you want to use all cool new features of Drupal 8 then upgrading if worth the consideration.
4. Tools to upgrade to Drupal 8
Drupal 8 core ships with a migrate module with an import API. This takes care of a lot of upgrading stuff, see Drupal IMP group
If you have a Drupal 6 or 7 install with little active modules then chances are those modules won't be available in Drupal 8 in near future. So maybe then you'll have to do the upgrades on your own.
Here are some resources that can help you with upgrading your modules and content to Drupal 8:
- Drupal module upgrader,
- Docs for upgrading to a Drupal 8 module
- Introduction to Drupal 8 API’s
- Full Drupal 8 API
- List of changes in Drupal 8
- Content migrate module
- Drupal 8 module upgrader
- Wich modules went into core
- Live Drupal 8 websites
So, malheureusement, there is no óne answer to the question: 'when and how do I need to upgrade to Drupal 8'. It really depends on the complexity of your Drupal system. An analysis of your current system will be needed. You'll have to compare your system with Drupal 7 and 8 core + available contrib modules.
Questions, feedback? Let me know in the comments!