Migrating a career website to Drupal 8: a simple case study
The topic of migration from Drupal 7 to Drupal 8 is getting hotter than ever. After all, there is already the ninth Drupal version on the horizon. The best way to prepare for it is to upgrade to Drupal 8 now. See why, and also discover a case study of migrating a career website to Drupal 8 performed by our team.
Why it’s high time for migrating your website to Drupal 8
Drupal 8 was released in November 2015, and Drupal 9 is planned for June 2020. All websites that are still on D7 are lagging a little behind, and soon this breach will be more and more noticeable.
Here’s why it’s worth migrating to Drupal 8 now:
- it paves the way for easy and instant upgrades in the future. Drupal 9 will be almost like the latest version of Drupal 8, with just a good clean-up from deprecated code and the introduction of the latest libraries.
- Many experts recommend migrating your website to Drupal 8 as part of preparing for Drupal 9. For example, Drupal creator Dries Buytaert pictured D7 with an abandoned rail track, while the D8 track leads to D9 and beyond, so “you will never have to change the tracks again.”
- By migrating your site now, you are not wasting time but enjoying numerous and irresistible Drupal 8’s benefits for business. D8 is mobile-first, multilingual, open to integration with third-party apps, handy in content creation, respective of web accessibility standards, clean and efficient in code thanks to using OOP, Twig, HTML5, and so on.
Case study of migrating a website to Drupal 8
Of course, we take care of migrating our customers. One of them is the international multidomain online store — JYSK. It has Danish roots and owns 2,740 stores in 39 countries across the globe.
All JYSK websites inside this huge multidomain “machine” needed to be migrated to D8. Today, we will describe one of them — the JYSK career website. This simple case study will become one of our future blog series about migrating websites to Drupal 8!
The website offers careers in various departments of the JYSK chain:
- the store
- distribution center
- customer service
Among the sections of the grid menu, there are also ones about the student programs, internship, JYSK values, and more.
The position descriptions are accompanied by the stories of real people who work on them:
For this website, we performed all the classic steps of migrating a website to Drupal 8
- migrating the functionality
- migrating the configuration
- migrating the content
We would now like to emphasize the most interesting points in this particular Drupal 8 migration case.
To migrate the databases, including content nodes, users, user roles, and taxonomy terms, our development team created a custom module specifically for the JYSK job site migration.
The migration module is interesting because it approaches migration in terms of entity configuration. First, we create migration groups (for the nodes, users, taxonomy terms, etc.) and then create configuration for each subgroup (content type, taxonomy vocabulary, etc.). The plugin maps the Drupal 7 and Drupal 8 fields and is responsible for the field change during the migration.
However, one of the most challenging steps was migrating the functionality. The job.jysk.dk website features were provided by a number of custom modules. They all needed a good rewrite to meet Drupal 8 standards.
Drupal 8 has many functions and APIs that are deprecated, which we needed to replace. And all custom modules were rewritten according to the OOP (object-oriented programming) style adopted by D8. The eighth version also introduced the use of plugins, so we needed to perform code refactoring.
We used the contributed module Twig Tweak to change the page templates in accordance with Drupal 8’s new template engine — Twig. The module improved the development experience by offering useful functions and filters.
Migrate to Drupal 8 with us!
If you are still on Drupal 7, consider migrating your website to Drupal 8 now. No matter is your website is simple or complex, our Drupal team will smoothly and carefully upgrade it to Drupal 8, as well as help you prepare for Drupal 9.