WordPress fout: Cannot use $this as parameter (PHP 7)

WordPress fout: Cannot use $this as parameter (PHP 7)

Gebruik je een WordPress thema met Cherry Framework 5? Dan kun je mogelijk tegen problemen aanlopen als je webhosting provider de PHP versie bijwerkt van PHP 5.6 naar PHP 7. In meeste gevallen zal PHP naar versie 7.2 of versie 7.3 worden bijgewerkt, en krijg je deze foutmelding te zien als je probeert in te loggen in het WordPress Dashboard:

PHP Fatal error: Cannot use $this as parameter in inc/hooks.php on line 408

In deze blogpost zal ik je uitleggen hoe je dit probleem kunt oplossen.

1. Maak eerst een backup van je website. Zorg dat je een kopie van alle bestanden en van de database maakt.

2. Open je FTP programma, zoals FileZilla, en navigeer naar de hoofdmap van de WordPress installatie (meestal is dit public_html). Vervolgens navigeer je naar de map inc binnen de thema-map welke je in gebruik hebt, bijvoorbeeld: /wp-content/themes/themanaam/inc/.
NB: In dit voorbeeld gebruik ik “themanaam” als voorbeeld. Via WordPress > Weergave > Thema’s kun je achterhalen welk thema actief is en wat de naam is van dit thema.

3. Download het bestand hooks.php en open het in een tekst editor. Bewaar een kopie van dit bestand als backup.

4. Gebruik de zoekfunctie van je tekst editor, en zoek naar de term render_widget_macros.

5. Je ziet deze regel:

function themanaam_render_widget_macros( $widget_text, $instance, $this ) {

Haal de verwijzing naar de parameter $this weg uit deze regel. Doe dit als volgt:

function themanaam_render_widget_macros( $widget_text, $instance ) {

Let op dat je de komma na $instance ook weghaalt.

6. Sla het bestand op, en upload het terug naar de server.

7. Check je website. Als het goed is kun je deze nu gebruiken in combinatie met PHP 7.

Dit was het. Je weet nu hoe je het probleem met Cherry Framework 5 en PHP 7 kunt oplossen. Heb je nog vragen? Laat het met weten via de comments.

Leave a reply

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *