Overslaan en naar de inhoud gaan

De ultieme Drupal 7 naar Drupal 9 migratiechecklist: 12 tips die je helpen bij een soepele overgang naar Drupal 9

Thomas van Eldijk
 | Bijgewerkt op 18 februari 2022

Natuurlijk kun je een bureau de opdracht geven om je Drupalwebsite één op één over te laten zetten, maar dan mis je wel de kans om je website aanzienlijk te verbeteren.

De overgang van Drupal 7 naar Drupal 9 vereist namelijk flink wat werk en je kunt de onderdelen die opnieuw gemaakt moeten worden verbeteren, uitbreiden of toekomstbestendig maken.

Zo kun je extra lang van je nieuwe Drupalwebsite genieten. De nieuwe updatecyclus van Drupal zou wel eens kunnen betekenen dat dit de laatste migratie is die je ooit nog hoeft te doen.

Onderstaande tips helpen je bij het bedenken van je wensen, maar helpen je ook alvast om een plan te maken voor een soepele overgang. Een migratie naar Drupal 9 vereist namelijk soms ook het maken van lastige keuzes en om dit goed te communiceren met je bureau.

1# Migreren of niet migreren?

Dit is een essentiële keuze die niet alleen impact heeft op de prijs en doorlooptijd, maar ook op hoe je de realisatie van de nieuwe website benaderd.

Niet migreren biedt meer vrijheid om te starten met een schone lei, alle content eens goed na te lopen en veranderingen door te voeren die al langer in de planning stonden.

Maar zelf met de hand de content overzetten kost ook tijd en in sommige gevallen is er zoveel content dat migreren haast noodzakelijk is.

In dat geval kan een developer gebruik maken van een migratiemodule waarbij content en contenttypes overgezet worden van Drupal 7 naar Drupal 9. Dit gaat via het schrijven van een migratiescript waarbij veld voor veld aangegeven moet worden waar welke data komt te staan. Dit wordt Mapping genoemd en kost de meeste tijd bij de migratie.

2# Maak een moduleoverzicht

Dit kun je natuurlijk samen met het bureau doen dat de migratie uitvoert. Het belangrijkste is dat er een overzicht komt van modules / functionaliteiten waarbij uitgezocht wordt of ze beschikbaar zijn voor Drupal 9. Niet alle modules van Drupal 7 zijn namelijk omgezet naar Drupal 9. Soms is de functie opgenomen in de core van Drupal 9, soms is er een andere module die het overneemt. Maar het komt ook voor dat een module niet veel gebruikt wordt en de modulebouwer het niet de moeite acht of de tijd heeft om het om te zetten naar Drupal 9.

De kans hierop is gelukkig steeds kleiner, maar het scheelt tijd en teleurstelling wanneer je nu al dit soort modules / functionaliteiten kunt ontdekken en bespreken. In veel gevallen kun je de functionaliteit ook op andere manieren ontwikkelen met de Drupalmodules die wel beschikbaar zijn.

3# Creëer een overzicht van je contenttypes

Maak een lijst van al je contenttypes en bedenk wat je mee wilt nemen naar de nieuwe Drupal 9-website. Wat laat je achter en wat wil je misschien samenvoegen? Dit heeft een grote impact op de kosten en doorlooptijd van de migratie. Met name het samenvoegen van contenttypes kan complex worden. Zorg daarom dat het duidelijk is welke doelstellingen en beperkingen de migratie heeft. Zet je de content zelf over, dan is het ook handig om dit overzicht te maken zodat je straks niet overbodig werkt hoeft te doen.

4# Update je gebruikersprofielen

Heb je een klantenportal of afgesloten ledengedeelte, dan bezit je Drupal 7-website gebruikersprofielen. Net als bij content is hier een tabel in de database voor gereserveerd waarin alle velden en data van je gebruikers worden opgeslagen.

Wanneer ook deze structuur en data overgezet moeten worden, is het handig hier een overzicht van te maken. We zien geregeld dat velden niet meer nodig zijn, inmiddels anders gebruikt worden of in externe systemen zoals CRM- of ERP-systemen alweer anders worden geformuleerd.

In een live website verander je niet zo snel de structuur, maar de migratie naar Drupal 9 is een mooie kans om het aan te passen of te verbeteren. Het verwijderen van velden die niet meer gebruikt worden is daarnaast ook goed vanuit privacyperspectief. Volgens de AVG is het niet toegestaan om persoonsgegevens langdurig op te slaan wanneer ze niet nodig zijn of gebruikt worden.

5# Inventariseer je content

Kijk hierbij niet zozeer naar de verschillende soorten content, dat doe je min of meer al door een overzicht te maken van de verschillende contenttypes, maar kijk meer naar de content zelf. Bestaat dat uit video’s, foto’s, links? En in hoeverre moet het gemigreerd worden naar de nieuwe website?

Hoe zit het daarnaast met content die je vaak niet eens als content ziet? Zoals webformulieren, de aanmeldingen binnen de webformulieren of reacties? Ik begrijp dat je eerste reactie zal zijn dat deze ook over moeten, maar hierdoor wordt de migratie wel duurder, complexer en gaat het langer duren.

6# Paragraphs

Veel nieuwe Drupal 9-websites werken met de paragraphsmodule; een andere methode om content te maken en te publiceren. Daardoor ontstaat er een verschil in de opbouw van je oude en nieuwe content.

Het is mogelijk om de oude content op te delen en in de nieuwe paragraphstructuur te zetten, maar dit heeft een negatief effect op de prijs en doorlooptijd.

Een andere optie is om de oude content te tonen zoals het er nu uitziet en straks in de nieuwe website de nieuwe content op te maken via paragraphs. Dat zorgt natuurlijk voor een duidelijk verschil tussen oude en nieuwe content, maar de oude content is wel beschikbaar.

7# Verbeteringen in je webdesign

Drupal 9 werkt anders op vrijwel alle vlakken dan Drupal 7, ook op het gebied van theming. Een theme is de grafische schil die bepaalt hoe de vormgeving van je website eruitziet. In theorie is het over te nemen, maar in de praktijk zien we dat het zinvoller is om een theme opnieuw op te bouwen. Hierbij kun je het oude webdesign één op één namaken, maar aangezien je het beste een theme opnieuw kunt maken, kun je er ook voor kiezen om verbeteringen door te voeren.

Elk webdesign kan altijd verbeteringen gebruiken. Qua gebruiksvriendelijkheid, SEO, conversie-optimalisatie of leesbaarheid. De onderzoeken naar het gebruik van websites bieden ons continu nieuwe inzichten. Vaak zijn dit inzichten die we al langer kenden vanuit ándere media, zoals een optimale breedte van tekstkolommen of het gebruik van plaatjes bij links naar andere content.

Maak daarom een lijst met wensen van dingen die je graag anders zou willen zien in je webdesign. Dit is hét moment om die door te laten voeren. En vraag je bureau om hierover mee te denken. Je kunt hierbij je bureau ook een beetje sturen door aan te geven dat je de komende jaren meer wilt doen met e-marketing en marketing automation. Of dat je meer wilt doen aan de toegankelijkheid van de website en wilt voldoen aan de webrichtlijnen.

8# Verbeterde functionaliteiten? Sla nu je slag!

Het installeren en configureren van nieuwe functionaliteiten kost de developers die eraan werken uiteraard meer tijd, maar aangezien ze toch al bezig zijn een nieuwe Drupal 9-website op te zetten kan het nu wel efficiënter en scheelt het vaak in de kosten.

Het kan daarom zeker lonen om een wensenlijstje met nieuwe functionaliteiten door te nemen en af te spreken dat die bij de overgang naar Drupal 9 direct worden ingebouwd. Denk bijvoorbeeld aan een klantenportal, documentenoverzicht, betaalmodule met koppeling naar iDEAL of een integratie met je CRM-systeem.

9# Maak een lijst van al je koppelingen

Veel websites worden gekoppeld aan allerlei diensten en systemen. Denk aan Hotjar, Google Analytics, Google Tag Manager, Matomo, Cloudflare, SendGrid, MailChimp of Campaign Monitor, om er maar een paar te noemen.

Het is daarom handig een lijst te maken van al deze koppelingen met de eventueel bijbehorende tags of scripts om ze te koppelen. Niet alleen kunnen de developers die de Drupal 9-website bouwen ze meteen invoeren, het biedt je ook een checklist om voor en na de livegang te controleren of al deze koppelingen nog werken.

10# Denk na over de toekomst

Het thema van veel van de tips in dit artikel gaan over het verbeteren van wat er al is. Maar hoe zit het met functionaliteiten of onderdelen van de website die er nú nog niet zijn, maar waar je in de toekomst wel mee aan de slag wilt? Denk aan een webshop, paywall, klantenportal, advertentiesysteem of koppeling met je CRM-systeem.

Het kan interessant zijn om die onderdelen meteen mee te nemen in de overgang naar Drupal 9. Naast dat het de investering van de overgang beter verkoopt naar gebruikers of collega’s, zijn deze onderdelen nu ook goedkoper door te voeren. Designers en developers zijn toch al bezig met de nieuwe website, en vaak is het rendabeler uitbreidingen direct door te voeren in plaats van ze later alsnog toe te voegen.

11# Plan en maak duidelijke afspraken

Dat is natuurlijk vrij logisch. Net als bij veel andere projecten vereist een migratie naar Drupal 9 de nodige communicatie en finetuning.

Maak daarom afspraken óf die finetuning mogelijk is en zo ja, hoe vaak dit nodig is. Spreek ook af wanneer de input verwacht wordt zodat partijen niet onnodig lang op elkaar hoeven te wachten.

12# Potje: onvoorzien

Maak binnen je budget voor de nieuwe Drupal 9-website ook een potje voor onvoorziene kosten. Denk aan een module die net uit is voor Drupal 9, maar die nog bugs bevat die een developer in een paar uur kan verhelpen, maar waarbij dit buiten de migratiekosten valt.

Natuurlijk moet je al dit extra werk zoveel mogelijk zien te voorkomen, maar soms is het nodig en dan is zo’n potje handig. En gebruik je het niet? Dan kun je het altijd inzetten voor extra marketingdoeleinden om de website nog meer te promoten of toch te voorzien van die webshop.

Succes met jouw migratieproject en heb je vragen over de overgang naar Drupal 9? Ik lees en beantwoord ze graag in het reactiegedeelte onderaan deze pagina.

Gerelateerde artikelen

Wij delen graag de kennis die we in huis hebben

Reacties

Is het niet beter om even te wachten met overstappen naar Drupal 9? Zo een nieuwe versie heeft vast kinderziektes. Wanneer zijn die eruit gehaald denken jullie?

Reactie van Tigo op 2 juni 2020

Hi Tigo, Drupal 9 is een doorontwikkeling van 8. Sinds Drupal 8.0 is de update cycles veranderd en voegt het Drupal core development team bij elke update (8.1, 8.2, 8.3, etc.) nieuwe functionaliteit toe.

Vroeger werden alle nieuwe functionaliteiten verzamelen in een major release (5.0, 6.0, 7.0) Dat had als voordeel dat je CMS erg stabiel bleef maar als grote nadeel dat de nieuwe major release zodanig 'anders' was, dat je in feite een nieuwe website moest bouwen.

Naar mate Drupal steeds populairder werd en ook voor enterprise level websites werd ingezet, zag je dat dat nadeel steeds meer ging wringen en men gekozen heeft voor een andere manier van updaten. 

Dit betekent concreet dat alle modules die werken voor Drupal 8 ook werken met Drupal 9. En je je Drupal 8 website zo kunt upgraden. Zeker wanneer je je Drupal 8 website netjes up-to-date hebt gehouden. Heb je een Drupal 8 website die wat verouderd is dan kun je beter eerst naar de laatste Drupal 8 versie upgraden en alles uitgebreid testen.

Versie Drupal 9.0 zelf zal geen nieuwe functionaliteiten bezitten, het is voornamelijk een versie die verouderde, niet gebruikte code verwijderd. De kans dat er kinderziektes in Drupal 9.0 zitten zal daarom klein zijn.

Reactie van Thomas van Eldijk op 9 juni 2020