{"id":20491,"date":"2026-11-03T12:16:37","date_gmt":"2026-11-03T11:16:37","guid":{"rendered":"https:\/\/stage.surver.nl\/kennisbank\/wordpress-debug-modus-inschakelen\/"},"modified":"2026-11-03T14:42:16","modified_gmt":"2026-11-03T13:42:16","slug":"wordpress-debug-modus-inschakelen","status":"publish","type":"kennisbank","link":"https:\/\/stage.surver.nl\/en\/kennisbank\/wordpress-debug-modus-inschakelen\/","title":{"rendered":"Enable WordPress Debug Mode"},"content":{"rendered":"<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"642\" src=\"https:\/\/stage.surver.nl\/wp-content\/uploads\/2026\/11\/kennisbank-wordpress-debug-modus-inschakelen-v2.jpg\" alt=\"Enable WordPress Debug Mode\" class=\"wp-image-20490\" srcset=\"https:\/\/stage.surver.nl\/wp-content\/uploads\/2026\/11\/kennisbank-wordpress-debug-modus-inschakelen-v2.jpg 1024w, https:\/\/stage.surver.nl\/wp-content\/uploads\/2026\/11\/kennisbank-wordpress-debug-modus-inschakelen-v2-300x188.jpg 300w, https:\/\/stage.surver.nl\/wp-content\/uploads\/2026\/11\/kennisbank-wordpress-debug-modus-inschakelen-v2-768x482.jpg 768w, https:\/\/stage.surver.nl\/wp-content\/uploads\/2026\/11\/kennisbank-wordpress-debug-modus-inschakelen-v2-18x12.jpg 18w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Er is iets mis met je site, maar WordPress vertelt je niet wat. Een pagina blijft leeg, een knop doet niets of je krijgt alleen de melding dat er een kritieke fout is opgetreden. De WordPress debug-modus schakel je in door in <code>wp-config.php<\/code> de constanten <code>WP_DEBUG<\/code> and <code>WP_DEBUG_LOG<\/code> on <code>true<\/code> te zetten en <code>WP_DEBUG_DISPLAY<\/code> on <code>false<\/code>, zodat fouten in <code>wp-content\/debug.log<\/code> komen in plaats van op het scherm van je bezoekers. Hieronder lees je hoe je dat veilig doet, hoe je het logbestand leest en waarom je hem daarna weer uitzet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"wat-de-debug-modus-doet\">Wat de debug-modus doet<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">De debug-modus is een instelling in WordPress die PHP-fouten, waarschuwingen en verouderde functieaanroepen zichtbaar maakt, inclusief het bestand en de regel waar het misgaat. Op een live site staat hij standaard uit. Dat is bewust, want een foutmelding kan bestandspaden of databasegegevens tonen die je niet op straat wilt hebben. Zet je hem aan, dan hoef je niet meer te gokken welke plugin het probleem geeft. Je leest het terug. Daarom is dit voor mij de eerste stap bij bijna elke fout zonder duidelijke melding, van een <a href=\"https:\/\/stage.surver.nl\/en\/knowledge-base\/wordpress-white-screen-of-death-oplossen\/\">white screen of death<\/a> tot de melding uit <a href=\"https:\/\/stage.surver.nl\/en\/knowledge-base\/a-critical-error-has-occurred-on-this-site-resolve\/\">A critical error has occurred<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Er werken drie instellingen samen. <code>WP_DEBUG<\/code> zet het melden van fouten aan. <code>WP_DEBUG_LOG<\/code> bepaalt of die meldingen naar een logbestand gaan, en <code>WP_DEBUG_DISPLAY<\/code> of ze op de pagina zelf verschijnen. De juiste combinatie op een live site is dus debug aan, logging aan en weergave uit. Zo krijg jij de informatie en ziet je bezoeker gewoon de site, of in het slechtste geval dezelfde fout als ervoor. Kom je nog in het dashboard, kijk dan ook bij <strong>Gereedschap &gt; Sitediagnose<\/strong>. Onder het tabblad Info zie je de PHP-versie, het geheugenlimiet en of debug aan staat, en dat leg ik graag naast het log. Voor het bredere stappenplan bij fouten, van databaseverbinding tot offline site, kun je terecht in <a href=\"https:\/\/stage.surver.nl\/en\/knowledge-base\/troubleshooting-wordpress-errors\/\">Troubleshooting WordPress Errors<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"zo-zet-je-de-debug-modus-aan\">Zo zet je de debug-modus aan<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Je zet de debug-modus aan door drie regels toe te voegen aan <code>wp-config.php<\/code>, het configuratiebestand in de hoofdmap van je WordPress-installatie. Een typefout in dit bestand haalt je site offline, dus werk rustig en bewaar eerst een kopie.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Open de File Manager in je hostingpaneel of maak verbinding via SFTP, en ga naar de hoofdmap van je site.<\/li>\n\n<li>Download <code>wp-config.php<\/code> als reservekopie en open het bestand in de editor.<\/li>\n\n<li>Zoek of er al een regel met <code>WP_DEBUG<\/code> staat. Pas die dan aan, want dezelfde constante twee keer defini\u00ebren geeft zelf een fout.<\/li>\n\n<li>Zet boven de commentaarregel waarin staat dat je moet stoppen met bewerken deze drie regels <code>define('WP_DEBUG', true);<\/code> <code>define('WP_DEBUG_LOG', true);<\/code> <code>define('WP_DEBUG_DISPLAY', false);<\/code><\/li>\n\n<li>Sla het bestand op en herhaal de handeling die misgaat.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Vanaf dat moment schrijft WordPress alles weg naar <code>wp-content\/debug.log<\/code>. Het bestand verschijnt pas als er ook echt iets te melden is. Werk je op een testkopie, dan mag <code>WP_DEBUG_DISPLAY<\/code> daar gerust op <code>true<\/code>. Dan zie je fouten direct op het scherm terwijl je bouwt, en dat scheelt zoeken. Werk je met SSH, dan kan het zonder de editor. Met <code>wp config set WP_DEBUG true --raw<\/code> zet WP-CLI de waarde voor je, en die opdracht doe je ook voor de andere twee. Ben je niet gewend om in configuratiebestanden te werken, lees dan eerst <a href=\"https:\/\/stage.surver.nl\/en\/knowledge-base\/wordpress-code-editing\/\">WordPress-code bewerken<\/a>. Daar leg ik uit hoe je zulke aanpassingen doet zonder je site te breken.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"het-logbestand-lezen\">Het logbestand lezen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">At <code>debug.log<\/code> zoek je naar regels met <code>PHP Fatal error<\/code> rond het tijdstip waarop je de fout zag, want dat zijn de meldingen die een pagina echt platleggen. Open het bestand en scroll naar onderen, daar staan de nieuwste regels. Elke regel noemt een tijdstip, het type melding en het pad naar het bestand. Aan dat pad zie je meestal direct de bron. Staat er <code>wp-content\/plugins\/plugin-name\/<\/code> in, dan is het die plugin. Staat er <code>wp-content\/themes\/themanaam\/<\/code> in, dan zit het in je thema.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Raak niet in paniek van een log vol meldingen. Een <code>Notice<\/code> or <code>Deprecated<\/code> is een signaal voor de maker van een plugin dat iets verouderd is, geen acute fout. Op veel sites staan er honderden en de site werkt prima. Een <code>Warning<\/code> verdient wel aandacht, maar breekt de pagina meestal niet. Vind je in <code>debug.log<\/code> niets, kijk dan ook in het foutlog van de server. Op onze hosting schrijft PHP fouten naar een bestand <code>error_log<\/code> in de map waar de fout optreedt. Daar vang je ook fouten die al optreden voordat WordPress zijn eigen logging start. Wil je zien welke verzoeken er rond dat tijdstip binnenkwamen, dan vind je de toegangslog in cPanel onder <strong>Raw Access<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"veilig-werken-en-daarna-weer-uitzetten\">Veilig werken en daarna weer uitzetten<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Zet de debug-modus na je diagnose altijd weer uit, want het logbestand groeit door en staat standaard op een plek die iedereen kan opvragen. Dat laatste weten veel mensen niet. Wie het adres <code>\/wp-content\/debug.log<\/code> achter je domein typt, kan het bestand op veel servers gewoon lezen, inclusief paden en soms gegevens uit formulieren. Je hebt twee oplossingen. Je kunt het log op een andere plek laten schrijven door bij <code>WP_DEBUG_LOG<\/code> een pad buiten je publieke map op te geven in plaats van <code>true<\/code>, of je blokkeert het bestand met een regel in <code>.htaccess<\/code>. Voorbeelden van zulke regels staan in <a href=\"https:\/\/stage.surver.nl\/en\/knowledge-base\/wordpress-htaccess-file-explanation-and-common-rules\/\">het .htaccess-bestand uitgelegd<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ben je klaar, zet dan <code>WP_DEBUG<\/code> terug op <code>false<\/code> of verwijder de regels, en verwijder ook <code>debug.log<\/code>. Wil je dieper graven, dan zijn er nog twee schakelaars. <code>SCRIPT_DEBUG<\/code> laadt de onverkleinde scripts van WordPress, handig bij JavaScript-problemen, en <code>SAVEQUERIES<\/code> legt elke databasequery vast. Die laatste vertraagt je site, dus die hoort op een <a href=\"https:\/\/stage.surver.nl\/en\/knowledge-base\/wordpress-staging-environment\/\">staging environment<\/a>. Een plugin zoals Query Monitor maakt dezelfde informatie leesbaar en helpt bij het zoeken naar oorzaken uit <a href=\"https:\/\/stage.surver.nl\/en\/knowledge-base\/causes-of-a-slow-wordpress-website\/\">een trage WordPress-site<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wat we bij Surver op de shared pakketten bieden, is alles wat je hiervoor nodig hebt. Je hebt File Manager, SSH en WP-CLI, en die <code>error_log<\/code>-bestanden schrijft de server zelf. Op onze <a href=\"https:\/\/stage.surver.nl\/en\/managed-hosting\/wordpress\/\">Managed WordPress Hosting<\/a> doe je de diagnose zelf. Wil je dat iemand anders updates bijhoudt en ingrijpt als het misgaat, kijk dan naar <a href=\"https:\/\/stage.surver.nl\/en\/services\/wordpress-maintenance-management\/\">WordPress maintenance<\/a>. Kwam de fout direct na een update, dan staat de herstelroute in <a href=\"https:\/\/stage.surver.nl\/en\/knowledge-base\/how-to-fix-a-failed-wordpress-update\/\">Site Down After an Update<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"veelgestelde-vragen\">Frequently Asked Questions<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Waarom wordt er geen debug.log aangemaakt?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Meestal staat <code>WP_DEBUG_LOG<\/code> niet op <code>true<\/code>, is <code>WP_DEBUG<\/code> verderop in het bestand nog een keer op <code>false<\/code> gezet, of staan de regels onder de regel waar je moet stoppen met bewerken. Het kan ook dat er simpelweg nog geen fout is opgetreden sinds je hem aanzette.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Vertraagt de debug-modus mijn site?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Een klein beetje, omdat elke melding naar schijf wordt geschreven. Op een site met veel meldingen merk je dat wel. Daarom zet je hem alleen aan voor de diagnose.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Kan ik de debug-modus aanzetten zonder wp-config.php te bewerken?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ja, met WP-CLI via SSH of met een plugin die de constanten voor je zet. Bij een wit scherm werkt een plugin alleen niet, omdat je dan niet in het dashboard komt. Op Surver shared hosting zijn SSH en WP-CLI in alle pakketten beschikbaar.<\/p>","protected":false},"excerpt":{"rendered":"<p>Er is iets mis met je site, maar WordPress vertelt je niet wat. Een pagina blijft leeg, een knop doet niets of je krijgt alleen de melding dat er een kritieke fout is opgetreden. De WordPress debug-modus schakel je in door in wp-config.php de constanten WP_DEBUG en WP_DEBUG_LOG op true te zetten en WP_DEBUG_DISPLAY op [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":20490,"template":"","meta":{"_acf_changed":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}}},"kennisbank_categorieen":[62],"class_list":["post-20491","kennisbank","type-kennisbank","status-publish","has-post-thumbnail","hentry","kennisbank_categorieen-wordpress"],"acf":[],"_links":{"self":[{"href":"https:\/\/stage.surver.nl\/en\/wp-json\/wp\/v2\/kennisbank\/20491","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stage.surver.nl\/en\/wp-json\/wp\/v2\/kennisbank"}],"about":[{"href":"https:\/\/stage.surver.nl\/en\/wp-json\/wp\/v2\/types\/kennisbank"}],"author":[{"embeddable":true,"href":"https:\/\/stage.surver.nl\/en\/wp-json\/wp\/v2\/users\/2"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/stage.surver.nl\/en\/wp-json\/wp\/v2\/media\/20490"}],"wp:attachment":[{"href":"https:\/\/stage.surver.nl\/en\/wp-json\/wp\/v2\/media?parent=20491"}],"wp:term":[{"taxonomy":"kennisbank_categorieen","embeddable":true,"href":"https:\/\/stage.surver.nl\/en\/wp-json\/wp\/v2\/kennisbank_categorieen?post=20491"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}