Krijg je ineens de foutmelding “syntax error, unexpected …” te zien op je WordPress-website? Dan schrik je waarschijnlijk flink. Je website toont ineens een wit scherm of een cryptische fout in plaats van je pagina’s – een stressvolle situatie, zeker als je geen ontwikkelaar bent. Gelukkig is deze veelvoorkomende PHP‑fout meestal vrij eenvoudig op te lossen, zelfs zonder diepgaande technische kennis. In dit kennisbankartikel leg ik pragmatisch en vriendelijk uit wat deze foutmelding betekent, hoe je ‘m herkent en oplost, én hoe je kunt voorkomen dat het nog eens gebeurt.
Wat betekent de foutmelding “syntax error, unexpected…”?
Een syntax error is vergelijkbaar met een grammaticale fout in de code van je website. Met andere woorden: er staat een klein foutje in de PHP-code, waardoor WordPress de code niet meer kan begrijpen en uitvoeren. De melding ‘unexpected’ duidt erop dat PHP iets tegenkomt wat niet verwacht werd – bijvoorbeeld een haakje, komma of ander teken op de verkeerde plek. Het gaat vaak om een detail: één enkel ontbrekend of extra teken (zoals een komma, puntkomma, aanhalingsteken of haakje) kan deze fout veroorzaken. Kleine foutjes kunnen dus grote gevolgen hebben voor je hele site.
Wanneer deze fout optreedt, stopt WordPress met het laden van de site. Je ziet dan een parse error‑melding die aangeeft wat er mis is en waar in de code dat gebeurt. Vaak staat er zoiets als:
Parse error: syntax error, unexpected ')' in /pad/naar/website/wp-content/themes/jouw-thema/functions.php on line 123
In dit voorbeeld is er een onverwacht ) teken op regel 123 in het bestand functions.php van je thema – waarschijnlijk ontbreekt er een opening ( of staat er een haakje teveel. Een ander voorbeeld:
Parse error: syntax error, unexpected '}', expecting end of file in C:\xampp\htdocs\jouwsite\wp-content\themes\twentyseventeen\functions.php on line 247
Hier stuit PHP op een } accolade die niet verwacht was (mogelijk een afsluitende accolade teveel, of er mist ergens eerder een openen {). In alle gevallen vertelt de foutmelding je precies welk bestand en welke regel het probleem bevat. Dat is waardevolle info om het op te lossen.
Hoe los je deze fout op?
Heb je de syntax error gespot? Volg dan deze stappen om je site weer aan de praat te krijgen. Je hebt daarbij geen uitgebreide programmeerkennis nodig – een paar gerichte acties volstaan meestal.
Stap 1 – Bekijk de exacte foutmelding
Allereerst: lees de foutmelding zorgvuldig. Zoals hierboven besproken bevat de melding drie belangrijke elementen: het type fout (Parse/Syntax error), wat er onverwacht werd aangetroffen, en de locatie (bestand + regelnummer). Noteer of onthoud deze details. Zo weet je in welk bestand je moet kijken en waar ongeveer in dat bestand de fout zit.
Tip: zie je geen foutmelding maar slechts een wit scherm of “Er is een kritieke fout op je website”? Dan onderdrukt WordPress de uitvoer. Schakel in dat geval tijdelijk debug‑modus in om de foutmelding tevoorschijn te halen. Dit doe je door in het bestand wp-config.php de regel define('WP_DEBUG', false); aan te passen naar true. Herlaad daarna de pagina; de precieze foutmelding zou nu zichtbaar moeten zijn (vergeet niet debug‑modus later weer uit te zetten).
Stap 2 – Controleer het bestand en de code op de genoemde regel
Nu je weet waar de fout zit, ga je dat bestand bekijken. Je kunt dit doen via de bestandsbeheerder van je hostingpakket of met een FTP‑programma. Navigeer naar het genoemde bestand (bijvoorbeeld een pluginbestand of functions.php van je thema) en open het in een tekst‑ of code‑editor.
Zoek naar het regelnummer dat in de foutmelding stond (de regelnummers staan meestal links in de editor aangegeven). Bekijk de code rond die regel heel nauwkeurig. Let op dingen als: staat er ergens een haakje open dat niet gesloten is? Mist er een puntkomma aan het einde van een regel? Zie je een extra accolade } of juist eentje te weinig? Vaak kun je aan de hand van het “unexpected” gedeelte al raden wat er mis is – bijvoorbeeld unexpected ')' wijst op een ongepaard haakje, unexpected T_STRING kan duiden op een ontbrekende komma of puntkomma vlak vóór die tekst, enzovoort.
Vergelijk de code desnoods met een origineel voorbeeld of documentatie. Heb je kort ervoor zelf een codefragment ingevoegd of gewijzigd? Bekijk dan precies die toevoeging nog eens; waarschijnlijk zit het probleem daar.
Stap 3 – Herstel het probleem in de code
Heb je het verdachte stukje code gevonden? Pas het dan aan. Enkele veelvoorkomende fixes zijn:
- Voeg een ontbrekend teken toe: bijvoorbeeld een
}om een codeblok af te sluiten, een)om een functie‑aanroep te sluiten, of een;aan het einde van een PHP‑statement. Eén zo’n klein teken kan het verschil maken tussen fout en werking. - Verwijder een overtollig teken: misschien heb je per ongeluk een haakje of accolade teveel laten staan. Haal die weg als je ziet dat de structuur niet klopt.
- Corrigeer verkeerde syntax: zie je een typfout of iets dat duidelijk niet klopt (bijv. een quote die niet goed is gesloten, of een
$die ontbreekt bij een variabele)? Pas dit aan zodat de PHP‑syntax weer klopt.
Na het aanpassen sla je het bestand op en vernieuw je je website in de browser. Als het goed is, is de foutmelding nu verdwenen en laadt je site weer normaal. Mocht je nog steeds een error krijgen, lees die dan opnieuw: het kan zijn dat er meerdere foutjes waren. Los ze één voor één op met dezelfde aanpak.
Tip: weet je niet zeker of je de code goed aangepast hebt? Probeer de code eerst in een code‑editor op je computer te plakken die syntax‑highlighting of -controle heeft. Zulke editors (zoals Visual Studio Code, Sublime Text, Atom, etc.) markeren fouten vaak meteen. Bijvoorbeeld: een editor laat met een gekleurd balkje zien dat er een puntkomma mist. Zo kun je het probleem identificeren voordat je de code live zet.
Alternatief: zet een backup terug via je hosting
Lukt het niet om de fout te vinden of ben je niet comfortabel met code aanpassen? Geen nood. Je kunt er ook voor kiezen om een backup terug te zetten. Veel hostingproviders maken dagelijks automatische back-ups van je website. Via het controlepaneel van je host (of een backup‑plugin als je die gebruikt) kun je een recente backup selecteren en herstellen. Kies een versie van vóór de wijziging waarbij de fout ontstond. Na het terugzetten zou je site het weer moeten doen.
Heb je zelf een handmatige backup van het betreffende bestand (bijv. de oude functions.php)? Dan kun je ook alleen dát bestand terugplaatsen. Hiermee herstel je de code naar de vorige, werkende toestand.
Waarom een backup? Het is de snelste manier om weer online te zijn als je even niet weet waar de fout precies zit. Let op: wijzigingen die je na dat backup‑moment gedaan had, ben je dan mogelijk kwijt, dus gebruik dit vooral als laatste redmiddel of als je zeker weet dat er weinig veranderd is in de tussentijd.
Veelvoorkomende oorzaken van “syntax error, unexpected”
Je vraagt je misschien af: hoe kon deze fout überhaupt ontstaan? Hier zijn de meest voorkomende oorzaken op een rij, speciaal relevant voor WordPress‑gebruikers zonder diepgaande programmeerkennis:
- Aanpassingen in plugin‑code: heb je zelf handmatig code toegevoegd aan een plugin, of een fragment in een pluginbestand geplakt? Een klein typfoutje hierin kan de syntax error veroorzaken. Dit gebeurt vaak vlak nadat iemand een pluginbestand heeft bewerkt om bijvoorbeeld functionaliteit toe te voegen.
- Bewerken van thema‑bestanden zonder controle: het
functions.php‑bestand of andere themabestanden aanpassen via de WordPress editor kan riskant zijn. Eén foutje (bijvoorbeeld tijdens het aanpassen van je thema’s code) kan je site laten crashen. Met name direct in de WordPress‑backend coderen is gevaarlijk, omdat je bij een fout niet meer in het dashboard kunt komen. - Vergeten haakje of puntkomma: de klassieker onder programmeerfouten. Vergeet je een
}aan het einde van een functie of mist er ergens een;, dan begrijpt PHP de rest van de code niet meer. Ook een)vergeten of te veel openen/sluiten is zo gebeurd. Dit soort interpunctiefouten zijn verantwoordelijk voor een groot deel van de syntax errors. - Code van internet geplakt zonder aanpassing: veel MKB’ers kopiëren handige codefragmenten van forums of blogs om iets toe te voegen aan hun site. Gaat dat mis, dan krijg je een syntax error. Bijvoorbeeld code die bedoeld is voor een andere WordPress‑versie of situatie, of waarbij je vergeet een stukje aan te passen (zoals een stukje HTML dat niet binnen
<?php ?>tags staat). Als je code klakkeloos overneemt zonder precies te weten wat het doet, is de kans op een foutmelding groter.
Deze oorzaken komen vaak neer op recent gemaakte wijzigingen. Een syntax error verschijnt vrijwel altijd direct nadat er code is bewerkt of toegevoegd in WordPress. De fout “komt dus niet uit de lucht vallen” – er is meestal aan voorafgaand een actie geweest (zoals het installeren van een nieuwe plugin, het bijwerken van een thema, of het knutselen met code).
Hoe voorkom je deze fout in de toekomst?
Voorkomen is beter dan genezen. Hoewel syntax errors soms niet 100% te vermijden zijn, kun je met deze tips de kans erop sterk verkleinen:
- Gebruik een child theme en pas nooit je live thema rechtstreeks aan. Wil je wijzigingen doen in de code van je thema? Maak dan eerst een child theme. Werk je in het actieve (parent) thema en je maakt een fout, dan ligt je hele site eruit. Met een child theme kun je het originele thema intact laten. Gaat er iets mis in het child theme, dan kun je altijd terug naar het origineel. Zo minimaliseer je risico én behoud je je wijzigingen bij theme‑updates.
- Test code eerst in een staging‑omgeving of op een lokale site. Probeer nieuwe code uit op een testomgeving – bijvoorbeeld een kopie van je site op een subdomein of in een lokale install (via XAMPP/Laragon o.i.d.). Wordt er een fout gegenereerd, dan gebeurt dat buiten het zicht van je bezoekers. Pas als alles werkt, breng je de wijziging over naar je live site. Het kost iets meer tijd, maar het kan je een hoop paniek besparen. (Heb je geen staging‑omgeving? Overweeg er een op te zetten, of maak in elk geval een backup voordat je aan de slag gaat.)
- Gebruik een code‑editor met syntax‑controle (zoals VS Code). In plaats van in de WordPress‑editor of kladblok te typen, schrijf of plak je code in een speciale editor op je computer. Gratis editors als Visual Studio Code, Sublime Text of Atom kleuren de code en lichten eventuele fouten uit. Zo zie je bijvoorbeeld meteen dat je een quotemark vergeten bent, of dat een haakje niet is gesloten – nog voordat je de code op je site zet.
- Maak een backup vóór iedere codewijziging of update. Dit blijft een gouden regel. Voor je een plugin installeert, een thema update of aan code sleutelt, zorg dat je een recente backup hebt. Veel hosts doen dit automatisch (dagelijkse backups), maar dubbelcheck dit en maak indien nodig zelf een export. Mocht er dan toch iets misgaan, kun je snel terug naar een werkende versie van je site zonder urenlang offline te zijn.
Met bovenstaande voorzorgsmaatregelen werk je een stuk veiliger aan je WordPress‑site. Ze beperken de kans op syntax errors en zorgen dat, áls er toch eentje sluipt, de impact gering is (je hebt immers een backup en/of ontwikkelomgeving als vangnet).