Het begint vaak met goede bedoelingen. De site voelt traag, u leest ergens dat een cacheplugin helpt en installeert er een. Een maand later ziet u een plugin die afbeeldingen comprimeert, en nog wat later eentje die JavaScript uitstelt en CSS opschoont. Elke plugin belooft winst. Toch is het resultaat na drie of vier optimalisatieplugins voor WordPress vaak dat de site trager is dan ervoor, of dat er dingen kapotgaan die eerst gewoon werkten.

Wij komen dit tegen bij een flink deel van de sites die wij voor het eerst onder handen nemen. Niet omdat de eigenaar iets doms heeft gedaan, maar omdat de plugins elkaar in de weg zitten op manieren die u van buitenaf niet ziet. In dit artikel leggen wij uit wat er dan precies misgaat, hoe u het herkent en hoe u het opruimt.

Het symptoom: meer plugins, slechtere cijfers

De klacht klinkt meestal zo: “Ik heb alles gedaan wat ze aanraden en de score in PageSpeed is nog steeds oranje.” Of erger: de score was 70 en is na de laatste plugin gezakt naar 50. Soms is de voorpagina prima, maar laadt het beheer tergend langzaam. Soms werkt een formulier niet meer, valt een slider stil of verschijnt een pagina zonder opmaak, alsof de stijl er even niet bij is.

Wat deze klachten gemeen hebben: ze zijn ontstaan na het installeren van een extra plugin, en niemand kan nog precies zeggen welke instelling wat doet. Er staan drie beheerschermen vol met vinkjes, en de helft van de opties overlapt.

Waarom optimalisatieplugins voor WordPress elkaar tegenwerken

Bijna elke optimalisatieplugin doet meerdere dingen tegelijk. Een cacheplugin comprimeert vaak ook CSS en JavaScript, stelt scripts uit, laadt afbeeldingen lui en zet soms een eigen CDN aan. Een afbeeldingsplugin doet WebP, lazy loading en formaataanpassing. Een “speed booster” doet nog eens hetzelfde. Zodra u er twee naast elkaar zet, voert de site dezelfde bewerking twee keer uit, of vechten twee plugins om wie de laatste hand legt.

Een paar concrete manieren waarop dat misgaat:

  • Dubbele minificatie. Plugin A verkleint de CSS en slaat het resultaat op. Plugin B pakt dat resultaat, verkleint het opnieuw en maakt er een nieuw bestand van. Dat kost rekentijd bij elke cache-opbouw en levert bestandsnamen op die de browser niet kan hergebruiken.
  • Dubbele lazy loading. WordPress laadt afbeeldingen zelf al lui sinds versie 5.5. Als twee plugins dat er nog eens overheen doen, krijgt de browser tegenstrijdige instructies. Het gevolg: afbeeldingen die te laat verschijnen, of helemaal niet.
  • Uitgestelde scripts die op elkaar wachten. Als plugin A JavaScript uitstelt en plugin B het combineert, kan de volgorde veranderen. Een script dat jQuery nodig heeft, draait dan voordat jQuery er is. Dat is de klassieke oorzaak van een formulier of menu dat opeens niets meer doet.
  • Cache boven cache. Een paginacache in de plugin, een paginacache bij de hostingpartij en een paginacache bij een CDN. Wijzigingen worden dan drie keer verkeerd bewaard, en u ziet uw eigen aanpassingen niet terug.
  • Extra werk bij elk bezoek. Sommige plugins controleren bij ieder paginabezoek of de geoptimaliseerde bestanden nog kloppen. Drie plugins, drie controles. Op goedkope hosting merkt u dat direct in de wachttijd voordat de pagina begint te laden.

Het onderliggende probleem is niet dat de plugins slecht zijn. Ze zijn ontworpen als alleenstaande oplossing en rekenen er niet op dat er een collega naast staat.

Zo stelt u vast of dit bij u speelt

U hoeft geen ontwikkelaar te zijn om de diagnose te stellen. Doorloop deze stappen:

  1. Open het pluginoverzicht en noteer alle plugins die iets met snelheid, cache, afbeeldingen, minify, lazy load of CDN doen. Meer dan twee is een signaal.
  2. Meet de laadtijd van de homepage en van één binnenpagina met PageSpeed Insights of GTmetrix. Schrijf de cijfers op.
  3. Bekijk de broncode van de pagina (rechtermuisknop, “Paginabron bekijken”) en zoek op de namen van de plugins. Ziet u CSS-bestanden van twee verschillende plugins die er allebei als “gecombineerd” uitzien? Dan wordt er dubbel werk gedaan.
  4. Deactiveer op een staging-omgeving, of anders buiten kantooruren, de plugins één voor één en meet opnieuw. Vaak springt de score omhoog zodra een plugin uit staat. Dat is het bewijs.

Een praktijkvoorbeeld. Een fysiotherapiepraktijk in Zwolle had WP Rocket, Autoptimize en een gratis “speed”-plugin tegelijk actief. Alle drie deden minificatie, twee deden lazy loading. Na het verwijderen van de twee extra plugins en het correct instellen van alleen WP Rocket zakte de laadtijd van ruwweg 4 naar 1,6 seconden. Er is geen regel code aangepast.

De oplossing: één plugin, goed ingesteld

Kies één volwaardige cache- en optimalisatieplugin en laat die al het werk doen. Welke dat is, hangt af van uw hosting: op LiteSpeed-servers is LiteSpeed Cache de logische keuze, elders is WP Rocket een betrouwbare betaalde optie en zijn er goede gratis alternatieven. In onze vergelijking van cacheplugins leest u waar de verschillen zitten.

Daarna in deze volgorde:

  1. Maak een back-up.
  2. Deactiveer de overige optimalisatieplugins en verwijder ze. Deactiveren alleen is niet genoeg: sommige laten bestanden en herschrijfregels achter in .htaccess.
  3. Leeg alle caches: in de plugin, bij de hostingpartij en bij het CDN als u dat gebruikt.
  4. Zet in de overgebleven plugin de opties één voor één aan. Eerst paginacache, dan CSS/JS-minificatie, dan uitgesteld laden. Controleer na elke stap of formulieren, menu’s en de winkelwagen nog werken.
  5. Meet opnieuw en vergelijk met de cijfers van daarvoor.

Afbeeldingen optimaliseren mag wel apart, mits die plugin alleen dat doet en de lazy loading daar uit staat. Eén taak per plugin is de vuistregel.

Hoe u herhaling voorkomt

Stel uzelf voor elke nieuwe plugin de vraag: doet iets wat ik al heb dit ook? Het antwoord staat meestal in de functielijst van de plugin die u al gebruikt. Over de bredere vraag hoeveel plugins verstandig is, schreven wij eerder een stuk over te veel plugins.

Leg ook vast welke plugin welke taak heeft, al is het maar in een simpel document. Wie na u aan de site werkt, weet dan waarom er maar één plugin voor snelheid staat en installeert er niet nog een bij.

Wilt u het niet zelf uitzoeken, dan is dit een typische klus voor een eenmalige snelheidsoptimalisatie door een specialist: de site wordt gemeten, overbodige plugins gaan eruit, en wat overblijft wordt netjes ingesteld en getest. WebMaintor doet dat, maar een goede freelancer of uw hostingpartij kan het vaak evengoed.

Conclusie

Drie optimalisatieplugins zijn geen drie keer zo veel snelheid. Meestal zijn ze de reden dat de site trager is dan nodig. Begin vandaag met stap één uit de diagnose: tel de plugins die met snelheid te maken hebben. Zijn het er meer dan twee, dan weet u waar de winst zit.