Steps to a Painless Drupal 6 to Drupal 7 Migration

Submitted by Joaquin Guardado on 07/28/2016 - 02:46:pm

In today’s ever-changing technology environment, maintainability and scalability of your digital business has become more important than ever. The recent release of Drupal 8 marked the end of life for Drupal 6, this means support and security patches to it’s contrib and core modules will not longer be provided to maintain and keep your business safe from potential security vulnerabilities and down time.

The good news is that moving forward and upgrading to the newer or the latest technologies, opens up the opportunity to design and architect a more maintainable, secure, and future proof online presence. Migrating from Drupal 6 to Drupal 7 will ensure that your business application gets continued support for security and stability updates, your customers will experience less downtime, increase their trust in your company and overall, enjoy a better product. This can keep you and your business moving at the speed of technology.

Where to Start

Content Audit

Look at every field on the system you're using and what modules may be in use to support those fields. Not just on nodes and content types either – some taxonomy, blocks, and other entities will likely have data you'll want to migrate. Take inventory of the fields and make sure they will map cleanly to the new system. Otherwise, you'll have to consolidate some fields (which can also cut the cost of a complex migration at the expense of content quality).

Functional Audit

Take inventory of what modules are being used and compare versions between 6 and 7. You'll often find the modules work equally well on both versions.

Take note, though, that a better solution using a different module may exist for Drupal 7. You'll also want to a thorough audit of any custom modules and functions to make sure they can port cleanly. Often, you'll have to do a little extra work on custom development to make sure it runds on Drupal 7.

Design Audit

You'll likely be doing a design overhaul during this phase. Make sure to take into account what has been working well on your site. Users hate when things move around and change, so make sure it's for good reason.

If you are keeping the same design, you'll likely just be re-naming a ton of selectors in your CSS. This is where good organization and naming conventions come in handy.

All Together, Now

Once these planning steps are complete then it’s time to prepare your site for migration and hand it over for development.

  • Backup your database
  • Backup your codebase or integrate your codebase with version control.
  • Backup your files directory
  • Start development

A development cycle starts with building the base structure, while keeping SEO, theme, and usability in mind. A solid base will save time during functional, migrating and theming phases. The functional phase will cover custom workflows that define how your business operates and the type of services offered to your customers. The next step is migrating data from Drupal 6 to Drupal 7.  A smart and effective way of migrating data is done by using Drupal's migrate module. This module allows for easier, more malleable data that can better organized and made more maintainable. Migrate offers a clean and efficient upgrade path that can be catered to the needs of your business.

Once development, functionality, and migration are complete, it’s time for theming and defining the look of your site.

Wireframes and mockups are always great for brainstorming, shaping, branding and a good place to start before styling. This is also a solid start to ensure the new theme for your site communicates your brand to customers.

Test, Iterate, Repeat

The final stage includes: QA, SEO review, functionality testing, and deploying your site live. Since Drupal 6 is now unsupported, making the investment soon to update your site to Drupal 7 will prevent security pitfalls, increase SEO ranking, increase satisfied customers, improve your online presence, and cut down on maintenance and support costs. Going through the upgrade process should be painless and a good sign that you chose a knowledgeable and experienced development team.

Drupal 8 Notes

If you would like to upgrade to Drupal 8, it’s important to consider this version of Drupal is a very early stage and therefore riskier and less tested. Gauging your amount of tolerance for risk and the needs of your business will help you make the right choice. Drupal 8 headless technology offers the flexibility of separating the data source from the theme layer, the result is a scalable, more future proof, fast application. This can be of great benefit for businesses who are ready for it. Other options include progressive decoupling and traditional architectures that can better match your needs.