De eerste release van PHP 8 is een feit. Daarmee heeft de community achter PHP weer een flinke stap voorwaarts gezet. Toch brengt een nieuwe PHP-versie vaak hoofdbrekens met zich mee voor websitebeheerders die gebruikmaken van Content Management Systemen (CMS) zoals WordPress. WordPress is immers niet alleen afhankelijk van de motor (‘de core’) maar ook van thema’s en plugins. De kans is dus groot dat je na de upgrade naar PHP 8 met een website zit die voor de helft niet meer werkt. Dit is uiteraard iets wat je wilt voorkomen. WordPress compatibel maken Ten eerste: PHP 8 is uitgebracht op 6 november 2020. Het is de eerste grote update van PHP. De eerdere releases hebben nooit veel invloed gehad op hoe WordPress gebouwd is. Maar PHP 8 is een grote update met vele veranderingen. Daardoor is de kans groot dat bepaalde functies binnen WordPress in combinatie met een webserver als Nginx niet goed zullen werken. Een bekend probleem is bijvoorbeeld dat bij WordPress versie 5.5 of lager een 404 error wordt geserveerd wanneer de webserver Nginx betreft. Daar is inmiddels ook een oplossing voor; upgraden naar WordPress 5.6. Veel functies in PHP 7 waren nog verouderd, omdat ze deels zijn overgenomen toen de upgrade vanuit PHP 5.6 een feit werd. De ontwikkelaars achter de programmeertaal hebben daar nu korte metten mee gemaakt. Een aantal verouderde functies zijn in PHP 8 helemaal niet meer te gebruiken. Daardoor is er een mogelijkheid dat een WordPress website uiteindelijk niet meer zal werken. Als je het updaten naar PHP 8 spannend vindt, kun je dit beter laten uitvoeren aan de hand van cloud managed WordPress VPS. Maak je WordPress Core compatibel Het hart van iedere WordPress website is de WordPress Core. Dit is de motor van de website en wordt door WordPress zelf onderhouden. Goed nieuws, want WordPress Core is inmiddels compatibel met PHP 8.0. Het enige wat je daarvoor hoeft te doen is WordPress te upgraden naar versie 5.6. Echter, dat betekent zeker niet dat je verzekerd bent van een goed werkende website. WordPress leunt namelijk op thema’s en plugins om een website of blog te bouwen. Het is voor de ontwikkelaars van WordPress zelf onmogelijk om al die plugins en thema’s van derde partijen te onderhouden. Daarom is er sprake van een ‘betaversie van WordPress 5.6’. WordPress is dus nog niet voor het grote publiek compatibel, maar het geeft voor website eigenaren wel alvast een voorproefje van wat er komen gaat. Er zijn een aantal manieren om plugins en thema’s ook compatibel te maken. Voorbereidingen treffen Het migreren van WordPress naar een PHP-versie als PHP 8 kan best pijnlijk zijn. Dat komt onder meer door de grote veranderingen. Om te voorkomen dat custom code het helemaal niet meer doet, is het mogelijk om aan de hand van het commando ‘php -l’ een lint uit te voeren. Op die manier kan niet-werkende code worden gedetecteerd. Een ander programma is PHPCompatibility. Deze kan verouderde code opsporen. Nadeel is wel dat je zelf enige kennis van programmeren nodig hebt om de code te verbeteren. Een andere optie is een kopie maken van de huidige website en deze binnen een tweede PHP-instantie op PHP-versie 8 laten draaien. Controleer daarna met de hand of alles werkt. De meeste plugins en thema’s die nog worden onderhouden, zullen snel met nieuwe updates komen. Gebruik je een thema of plugin die al jaren niet meer wordt bijgewerkt? Dan wordt het tijd om afscheid van deze onderdelen te nemen en op zoek te gaan naar een vervanging die wel bij de tijd is.

22 februari 2021

Hoe PHP 8 compatibel maken met WordPress themes en plugins?

De eerste release van PHP 8 is een feit. Daarmee heeft de community achter PHP weer een flinke stap voorwaarts gezet. Toch brengt een nieuwe PHP-versie vaak hoofdbrekens met zich mee voor websitebeheerders die gebruikmaken van Content Management Systemen (CMS) zoals WordPress. WordPress is immers niet alleen afhankelijk van de motor (‘de core’) maar ook van thema’s en plugins. De kans is dus groot dat je na de upgrade naar PHP 8 met een website zit die voor de helft niet meer werkt. Dit is uiteraard iets wat je wilt voorkomen.

WordPress compatibel maken

Ten eerste: PHP 8 is uitgebracht op 6 november 2020. Het is de eerste grote update van PHP. De eerdere releases hebben nooit veel invloed gehad op hoe WordPress gebouwd is. Maar PHP 8 is een grote update met veel veranderingen. Daardoor is de kans groot dat bepaalde functies binnen WordPress in combinatie met een webserver als Nginx niet goed zullen werken. Een bekend probleem is bijvoorbeeld dat bij WordPress versie 5.5 of lager een 404 error wordt geserveerd wanneer de webserver Nginx betreft. Daar is inmiddels ook een oplossing voor: upgraden naar WordPress 5.6.

Veel functies in PHP 7 waren nog verouderd, omdat ze deels zijn overgenomen toen de upgrade vanuit PHP 5.6 een feit werd. De ontwikkelaars achter de programmeertaal hebben daar nu korte metten mee gemaakt. Een aantal verouderde functies zijn in PHP 8 niet meer te gebruiken. Daardoor is er een mogelijkheid dat een WordPress website uiteindelijk niet meer zal werken. Als je het updaten naar PHP 8 spannend vindt, kun je dit beter laten uitvoeren aan de hand van cloud managed WordPress VPS.

Maak je WordPress Core compatibel

Het hart van iedere WordPress website is de WordPress Core. Dit is de motor van de website en wordt door WordPress zelf onderhouden. Goed nieuws, want WordPress Core is inmiddels compatibel met PHP 8.0. Het enige wat je daarvoor hoeft te doen is WordPress te upgraden naar versie 5.6. Echter, dat betekent zeker niet dat je verzekerd bent van een goed werkende website. WordPress leunt namelijk op thema’s en plugins om een website of blog te bouwen. Het is voor de ontwikkelaars van WordPress zelf onmogelijk om al die plugins en thema’s van derde partijen te onderhouden. Daarom is er sprake van een ‘betaversie van WordPress 5.6’.

WordPress is dus nog niet voor het grote publiek compatibel, maar het geeft voor website eigenaren wel alvast een voorproefje van wat er komen gaat. Er zijn een aantal manieren om plugins en thema’s ook compatibel te maken.

Voorbereidingen treffen

Het migreren van WordPress naar een PHP-versie als PHP 8 kan best pijnlijk zijn. Dat komt onder meer door de grote veranderingen. Om te voorkomen dat custom code het helemaal niet meer doet, is het mogelijk om aan de hand van het commando ‘php -l’ een lint uit te voeren. Op die manier kan niet-werkende code worden gedetecteerd.

Een ander programma is PHPCompatibility. Deze kan verouderde code opsporen. Een nadeel isdat je zelf enige kennis van programmeren nodig hebt om de code te verbeteren. Een andere optie is een kopie maken van de huidige website en deze binnen een tweede PHP-instantie op PHP-versie 8 laten draaien. Controleer daarna handmatig of alles werkt. De meeste plugins en thema’s die nog worden onderhouden, zullen snel met nieuwe updates komen. Gebruik je een thema of plugin die al jaren niet meer wordt bijgewerkt? Dan wordt het tijd om afscheid te nemen van deze onderdelen en op zoek te gaan naar een vervanging die wel bij de tijd is.

  • Deel dit bericht