WordPress Performance

Naslagartikelen voor de WordPress-performanceproblemen die ik het vaakst tegenkom: een site die traag aanvoelt voor bezoekers, een trage wp-admin, responstijden die wisselen door de dag heen, piekbelasting waar de server net niet doorheen komt en de resourcelimieten die er onder liggen.

Het doel van elk artikel is je helpen herkennen waar de vertraging echt zit, in WordPress zelf, in de database, in de cachinglaag of in de hostingomgeving, voordat je instellingen begint aan te passen.

Scrollen

Artikelen

  1. Waarom een WordPress-site traag voelt

    Traagheid op een WordPress-site is zelden één ding. Het is een gelaagde meting, de optelsom van netwerktijd, servertijd en browsertijd. Dit artikel laat zien wat bezoekers op de voorkant echt ervaren, waar in een WordPress-request de tijd doorgaans heen gaat, en welke aangrenzende problemen mensen hier vaak mee verwarren.

    1540 woorden
  2. Waarom de WordPress-admin traag is

    Een WordPress-dashboard dat hapert terwijl de publieke site razendsnel blijft, is een van de meest voorkomende WordPress-klachten. De oorzaak is structureel, geen bug. De admin draait een fundamenteel ander soort verzoek dan de voorkant, en bijna elke optimalisatie die bezoekers helpt, doet niets voor de admin. Dit artikel legt uit waarom.

    1691 woorden
  3. Wat TTFB is en waarom WordPress-sites er vaak een hoge hebben

    Time to First Byte is de wachttijd tussen het moment dat een browser een verzoek start en het moment dat de eerste byte van het antwoord binnenkomt. Bij een WordPress-site is dit de beste maatstaf voor hoeveel werk de server nog moet doen voordat de pagina überhaupt kan beginnen te renderen. In dit artikel leg ik uit wat TTFB precies omvat, wat een hoge waarde echt zegt en welke aangrenzende problemen vaak met TTFB worden verward.

    1294 woorden
  4. Wat hoge CPU-belasting betekent voor een WordPress-site

    Hoge CPU-belasting betekent dat de server het grootste deel van zijn processortijd kwijt is aan PHP, MySQL en de overige processen die je WordPress-site draaiende houden. Dit artikel legt uit wat CPU-gebruik nou eigenlijk meet, waarom een dichtgetrokken CPU juist die symptomen geeft die je ziet, en welke aangrenzende problemen mensen er steevast mee verwarren.

    1483 woorden
  5. Wat PHP workers zijn en waarom ze in WordPress uitgeput raken

    PHP workers zijn de serverprocessen die een WordPress-verzoek omzetten in HTML. Zodra ze allemaal tegelijk bezig zijn, schuift het volgende verzoek de wachtrij in en hapert je site. Dit artikel legt het mechanisme uit, de pool-modi en de symptomen die een verzadigde pool oplevert, zodat de rest van de prestatiekennisbank pas echt klikt.

    1403 woorden
  6. Hoe los je WordPress traag na een plugin-installatie op

    Je activeert een plugin en de site voelt meteen zwaarder, in het dashboard, op de voorkant of allebei. Dit artikel loopt in vijf stappen door hoe je vaststelt of die nieuwe plugin echt de oorzaak is, profileert wat hij op elke request doet, en beslist of je hem tunet, vervangt of weggooit.

    2633 woorden
  7. Waarom WordPress traag kan aanvoelen na een update

    Een WordPress-site die gisteren vlot was en vandaag stroperig, vlak na een core-, plugin- of thema-update, botst meestal tegen een van twee heel verschillende problemen aan. Dit artikel legt het mechanisme achter traagheid na een update uit, hoe je een tijdelijke dip onderscheidt van een structurele regressie, en welke aangrenzende problemen mensen er regelmatig mee verwarren.

    1253 woorden
  8. Waarom een WordPress site soms traag en soms snel is

    Een WordPress site die het ene moment snel is en het volgende moment traag doet dat niet willekeurig. Wisselende traagheid heeft altijd een patroon, en dat patroon vertelt welk deel van de stack onder druk staat. Dit artikel legt het mechanisme uit, benoemt de gebruikelijke patroonvormen en scheidt wisselende traagheid van de problemen waar het vaak mee verward wordt.

    1406 woorden
  9. Wat een trage database in WordPress eigenlijk betekent en waardoor het komt

    Bijna elke WordPress-pagina draait tientallen SQL-queries voordat de eerste byte de server verlaat. Als iemand zegt dat de database traag is, bedoelt diegene meestal één van vijf totaal verschillende dingen, en de oplossing voor elk van die vijf is anders. In dit artikel leg ik uit wat die vijf dingen precies zijn, waarom WordPress de database zo zwaar belast, en welke aangrenzende problemen ten onrechte op het bordje van de database belanden.

    1559 woorden
  10. Waarom WooCommerce trager is dan een gewone WordPress-site

    Een WooCommerce-shop is geen contentsite met een winkelwagen eraan geplakt. Het is een ander soort WordPress, met een ander verzoekprofiel, een andere druk op de database, en een flink stuk oppervlak dat gewoon niet cachebaar is. Dit artikel legt uit wat WooCommerce écht trager maakt dan een gewone WordPress-site, zodat de rest van de performance-kennisbank voor shopeigenaren hout snijdt.

    1757 woorden
  11. Hoe WordPress caching werkt

    WordPress caching is niet één ding. Het zijn minstens vier losse lagen, elk met een eigen probleem, eigen failure modes en een eigen plek om te configureren. In dit artikel leg ik uit wat elke laag doet, welke laag een caching plugin eigenlijk bedoelt als die het over caching heeft en welke problemen caching helemaal niet oplost.

    3014 woorden
  12. Waarom je WordPress cache niet werkt

    Een caching plugin staat aan, het dashboard is groen, en de site voelt nog steeds traag of de hit rate blijft op nul staan. In negen van de tien gevallen doet de plugin het gewoon goed en wordt de cache overgeslagen om een reden die je binnen tien minuten kunt terugvinden. Dit artikel loopt de oorzaken door op volgorde van hoe vaak ze daadwerkelijk opduiken op WooCommerce- en contentsites, hoe je vaststelt welke jou treft, en wat je per geval moet fixen.

    3328 woorden
  13. Redis object cache instellen in WordPress

    Je host raadt Redis aan. Je hebt de Redis Object Cache plugin geïnstalleerd, maar het dashboard zegt nog steeds 'Drop-in: Invalid' of 'Not connected'. In deze walkthrough lees je wat die drop-in eigenlijk is, welke wp-config.php constants ertoe doen, de valkuil bij Docker Compose en hoe je controleert of de cache ook echt iets doet.

    2643 woorden
  14. WordPress wp-cron: waarom het misgaat en hoe je het vervangt

    WP-Cron lijkt op een cron-daemon maar is het niet. Het is een PHP-routine die alleen draait zodra een bezoeker je site raakt, en precies dat is de reden dat ingeplande posts verdwijnen, backups hun tijdslot missen en WooCommerce-mails uren te laat aankomen. Dit artikel legt uit wat WP-Cron echt is, waarom het faalt en hoe je het vervangt door een echte system cron die gewoon draait wanneer hij moet.

    2899 woorden
  15. Autoload-data in wp_options: hoe een opgezwollen tabel WordPress vertraagt

    Je hosting rapport waarschuwt dat de autoloaded options in wp_options te groot zijn, of het WordPress Site Health scherm zet autoload op kritiek. In dit artikel lees je wat autoload precies doet, waarom een opgeblazen autoload elke request vertraagt, welke metingen ertoe doen (en welke niet), en hoe je het veilig opruimt zonder iets stuk te maken.

    2809 woorden
  16. WordPress Heartbeat API: wat het is en hoe je het beheerst

    De Heartbeat API is het ingebouwde WordPress polling-systeem achter autosave, post locking en realtime admin-notificaties. Het is ook een van de eerste verdachten zodra een hoster meldt dat admin-ajax.php veel CPU opslokt. Dit artikel legt uit wat Heartbeat daadwerkelijk doet, hoe je het uit elkaar trekt van WooCommerce cart fragments, en hoe je het veilig throttlet zonder de editor kapot te maken.

    2596 woorden
  17. WordPress + Cloudflare: correcte configuratie en veelvoorkomende conflicten

    Cloudflare voor je WordPress-site zetten kan een site sneller maken, beschermen tegen aanvallen en hem op drie of vier hele specifieke manieren breken. Dit artikel loopt de juiste setupvolgorde door, de SSL-modus die niet in een lus loopt, de cache rules die ingelogde gebruikers en WooCommerce niet stukmaken en de misconfiguraties die ik het vaakst zie als een site in de problemen zit.

    4294 woorden
  18. Hoge admin-ajax.php belasting in WordPress diagnosticeren

    Een hosting-dashboard of APM-trace die admin-ajax.php als top-URL toont, vertelt op zichzelf bijna niets. Het bestand is een dispatcher: het routeert elk AJAX-verzoek dat WordPress-plugins doen naar de juiste PHP-handler. De echte vraag is welke action de load veroorzaakt en waarom. Dit artikel laat zien hoe je de veroorzaker identificeert, de vijf meest voorkomende oorzaken oplost en de 'oplossingen' vermijdt die het juist erger maken.

    1870 woorden
  19. Een CDN instellen voor WordPress: statische assets goed offloaden

    Een CDN voor je WordPress-site zetten is een van de goedkoopste performance-upgrades die er zijn, maar alleen als je snapt wát voor CDN je opzet en welk soort je stack misschien al heeft. In dit artikel leg ik het verschil uit tussen een reverse-proxy CDN zoals Cloudflare en een pull-zone CDN zoals BunnyCDN of KeyCDN, loop ik de stappen voor allebei door, behandel ik de WordPress-plugin die de URL-rewriting doet en wijs ik aan welke dynamische paden je echt buiten de cache moet houden.

    3421 woorden
  20. WordPress afbeeldingsoptimalisatie: WebP, compressie en lazy loading

    Als PageSpeed Insights een WordPress-site afbrandt op trage afbeeldingen, dan is de oplossing zelden één instelling in één plugin. Het is een klein stapeltje keuzes: in welk formaat upload je, hoe agressief comprimeer je, wat lazy-load je wel en wat absoluut niet, en hoe wordt de LCP-afbeelding geprioriteerd. Dit artikel loopt dat stapeltje langs en laat zien wat WordPress core in 2026 al vanzelf voor je doet.

    2768 woorden
  21. WordPress + Nginx FastCGI cache: full-page caching op serverniveau

    Nginx kan gerenderde WordPress-HTML cachen in shared memory en op disk en die vervolgens aan bezoekers serveren zonder ook maar één PHP-worker aan te roepen. In dit artikel zet ik een productie-waardige FastCGI cache op: zone-configuratie, de bypass-regels die je dashboard en WooCommerce-cart uit de cache houden, stampede protection, purgen via de Nginx Cache plugin en hoe je $upstream_cache_status leest om te bevestigen dat de cache zijn werk doet.

    3492 woorden
  22. WooCommerce database-optimalisatie voor shops met veel bestellingen

    Een WooCommerce-shop met tienduizenden bestellingen bouwt specifieke databaseproblemen op die generiek WordPress-advies niet oplost. Het admin-orderscherm kruipt, de rapportagepagina valt stil, en de database blijft maar groeien. Dit artikel loopt door de concrete stappen om te achterhalen welk deel van de database de flessenhals is, te migreren naar HPOS als dat nog niet is gebeurd, de tabellen op te schonen die stilletjes meegroeien naast de orders, en onderhoud in te richten dat voorkomt dat het probleem terugkomt.

    1681 woorden
  23. PHP-FPM tuning voor WordPress: pm.max_children berekenen en de juiste procesmanager kiezen

    PHP-FPM pool-instellingen bepalen hoeveel PHP workers je server tegelijk kan draaien en hoe ze worden beheerd. Deze gids loopt door de drie procesmanager-modi, de formule om pm.max_children te berekenen op basis van beschikbaar RAM, de bijbehorende richtlijnen voor reserveworkers en recycling, en een uitgewerkt voorbeeld voor een 4 GB VPS met WordPress en WooCommerce.

    1383 woorden
  24. WordPress database onderhoud: revisies, verweesde postmeta en opgeblazen tabellen opschonen

    WordPress verzamelt berichtrevisies, verlopen transienten, verweesde postmeta, verwijderde berichten en automatische concepten. Een site die jarenlang draait kan een database hebben die twee keer zo groot is als nodig. Deze gids loopt door elk type afval, hoe je het veilig verwijdert met WP-CLI en SQL-queries, hoe je revisies beperkt voor de toekomst, en hoe je OPTIMIZE TABLE uitvoert zonder productieverkeer te blokkeren.

    1340 woorden
  25. PHP OPcache configureren voor WordPress: instellingen, tuning en monitoring

    OPcache is de grootste gratis performance-winst op een self-hosted WordPress-server, maar de standaard 128 MB is te krap voor een site met veel plugins en het standaard revalidatie-gedrag is afgesteld op development, niet op productie. Deze gids behandelt de zes directieven die ertoe doen voor WordPress, een veilig productieprofiel, of je JIT moet aanzetten, hoe je de output van opcache_get_status leest, en welke cache-reset discipline je nodig hebt zodra opcache.validate_timestamps op 0 staat.

    2863 woorden

Waar je begint als WordPress traag aanvoelt

Performanceproblemen hebben zelden één oorzaak. De snelste manier om geen uren te verspillen is eerst bepalen waar de vertraging zit voordat je iets aanpast.

  • Noteer precies waar het traag is: alleen de voorkant, alleen wp-admin, of allebei. De artikelen over een trage site en een trage wp-admin wijzen op heel verschillende oorzaken.
  • Check of de vertraging constant is of wisselend. Wisselende snelheid wijst vaak op cachinglagen, geplande taken of buren op de server, niet op je eigen code.
  • Vergelijk een ingelogde en uitgelogde weergave. Een site die snel is voor bezoekers en traag voor redacteuren is bijna altijd een wp-admin- of databaseprobleem, niet iets op de frontend.
  • Noteer of er recent iets is gewijzigd: een plugin geïnstalleerd, een update, een themawissel, een configuratiewijziging. De artikelen over traagheid na een plugin-installatie en traagheid na een update lopen die diagnose stap voor stap door.

Symptoom en oorzaak zijn niet hetzelfde

Een hoge TTFB, een trage database, uitgeputte PHP-workers en een hoge CPU-belasting zijn meestal verschillende uitzichten op hetzelfde onderliggende belastingprobleem. Ze staan als losse artikelen op de site omdat het symptoom in jouw monitoring bepaalt waar je als eerste kijkt, maar in de praktijk delen ze vaker oorzaken dan je zou denken.

  • Hoge TTFB is wat bezoekers en tools als Lighthouse zien. De oorzaak zit erachter: een trage query, een vastlopende plugin-call of een backend die op iets anders staat te wachten.
  • Trage database is wat in slow query logs en APM verschijnt. Het is een van de vaakst voorkomende oorzaken van een hoge TTFB.
  • Uitgeputte PHP-workers is wat je ziet als je de capaciteit voor gelijktijdige verzoeken opraakt, vaak omdat elk verzoek langer duurt dan zou moeten (vaak vanwege een trage database).
  • Hoge CPU-belasting is wat je hostingdashboard laat zien als WordPress meer werk verzet dan normaal, meestal door een ontspoorde plugin, een inefficiënt thema of agressief botverkeer.

Als het eerste artikel dat je leest niet exact aansluit op wat je ziet, volg dan de cross-links erin. De artikelen in deze subcategorie zijn zo geschreven dat ze naar elkaar verwijzen waar ze elkaar overlappen.

Klaar met terugkerende traagheid?

Traagheid komt vaak terug na snelle fixes. Professioneel onderhoud houdt updates, caching en limieten consequent op orde.

Bekijk WordPress onderhoud

Doorzoek deze site

Begin met typen om te zoeken, of blader door de kennisbank en blog.