Migration from Drupal 7 to Drupal 8: our case study

Blog image

Mobile responsiveness, multilingual superpowers, easy content editing, awesome third-party integration — the list of Drupal 8 benefits for business could go on forever and ever! They inspire more and more website owners to migrate from Drupal 7 to Drupal 8. Upgrades & migration became one of the most popular services with our Drupal development and support agency. While upgrading our customers, we could not ignore that one of our corporate websites, drudesk.com, was still staying on Drupal 7. What an injustice! So we also performed its migration from Drupal 7 to Drupal 8 and would like to share this case study with you.

Our case of migration from Drupal 7 to Drupal 8

All migrations to Drupal 8 start with creating a fresh Drupal 8 installation. An inventory of contributed modules is performed to see which of them have corresponding ones in Drupal 8, as well as an upgrade path. Some modules should be replaced with new ones, or are not be needed at all in Drupal 8. All the configuration and content is moved to Drupal 8 with the help of powerful Drupal migration modules. Where needed, they are added manually or moved by means of custom migration scripts.

Migration is an also good opportunity to do a website redesign, so we took this chance and freshened up the look and feel of our website.

Drudesk.com is a brochure site that showcases Drupal support and maintenance services, and has an extensive blog section with 400+ blog posts. The most exciting part of our migration was moving all these blog posts to the new Drupal 8 installation, which we are going to tell you in more detail.

Migrate Drudesk from Drupal 7 to Drupal 8

 

Our custom module for content migration to Drupal 8

So we needed to migrate 400+ nodes of content from our main content type — “Blog”. Our content migration task was complicated with the fact that the content type fields had different names and configuration in Drupal 7 and Drupal 8.

Drudesk migration to Drupal 8 content type fields

 

Another point was that we had to migrate the meta tags (titles, descriptions, and keywords) for all these blog nodes. This is very important so the search engines know what the blog posts are about. However, the meta tags had a different structure of being recorded to the database in Drupal 7 and in Drupal 8.

To solve all these issues, we created our own custom migration script. It was a Drupal 8 module “Drudesk migration” written by our developers specially for Drudesk.

The module mapped the Drupal 7 and Drupal 8 content-type fields to each other. It fetched the data of the fields of the Blog content type from the database and altered it to fit the Drupal 8 website.

The module also parsed all the meta tags from Drupal 7 and changed their structure in accordance with the Drupal 8 requirements.

And, since every blog node had a cover image, the module also fetched it by the URL and smoothly moved it to the Drupal 8 website.

We also used the core Drupal 8 Migrate API, as well as contributed modules Migrate Tools and Migrate Plus to successfully perform our migration.

Drudesk migration to Drupal 8

 

What about your migration to Drupal 9 or 10?

If you are still on Drupal 7, consider moving higher! Drupal 9/10 is an innovative and feature-rich release, which is almost a rewrite from scratch as compared to Drupal 7.

That’s why migrations from Drupal 7 to Drupal 9/10 are not always quick and easy. It all depends on the type and complexity of the website and the amount of custom code.

However, our Drupal team will always find the best ways to handle your migration. Apply for migrating from Drupal 7 to Drupal 10, and let your business benefit from it enormously!