WordPress draait een fors deel van de Nederlandse webshops, en dat is niet zonder reden. Het is open, flexibel, betaalbaar, en met WooCommerce kun je in een paar dagen een werkende webshop staan. De keerzijde: WordPress is een lego-toren van plugins, themes en updates die elkaar onverwacht kunnen tegenwerken. Eén update op donderdagmiddag, en zaterdag kunnen klanten ineens niet meer afrekenen.
Bij SharpClicks zien we ondernemers met dat soort drama's regelmatig. Het zijn vaak goed lopende shops met betrokken eigenaren, die ineens halve dagen kwijt zijn aan emergency-fixes of dure inhuur. Niet omdat ze iets fout deden, maar omdat ze niet wisten waar de kwetsbaarheden zaten. In dit artikel zet ik op een rij waarom WordPress-updates op een webshop riskanter zijn dan op een gewone site, hoe je dat risico beheerst, en wanneer je serieus moet overwegen om over te stappen op iets anders.
Waarom een WordPress-webshop kwetsbaarder is dan een normale site
Een gewone WordPress-website heeft doorgaans 5-10 plugins, een theme en de WordPress core. Een webshop heeft daar bovenop:
- WooCommerce zelf, met eigen update-cyclus.
- Een payment-plugin (Mollie, Adyen, Stripe), met PCI-vereisten.
- Een paar marketing-plugins (Mailchimp-koppeling, Klaviyo, Hotjar).
- Een SEO-plugin (Yoast of RankMath).
- Een caching-plugin voor performance.
- Een security-plugin om aanvallen te weren.
- Een pagebuilder of theme met eigen sub-add-ons (Elementor, Divi).
- Een feed-plugin voor Google Shopping en marktplaatsen.
Resultaat: een gemiddelde Nederlandse WordPress-webshop draait makkelijk 25-40 plugins. Elke update kan in theorie elke andere plugin breken. De combinaties zijn onbeheersbaar veel om te testen.
De vijf meestvoorkomende update-rampen
1. Caching-plugin blokkeert betalingsscript
Cache-plugins zoals WP Rocket of W3 Total Cache cachen vaak iets te agressief na een update. Het effect: bezoekers zien hun winkelwagen niet meer goed of de checkout laadt niet. Vaak pas zichtbaar omdat klanten klagen, niet omdat het in monitoring opvalt.
2. Security-plugin blokkeert legitieme requests
Wordfence, iThemes Security en Sucuri kunnen na update strenger worden in wat ze blokkeren. Inclusief je eigen Mollie-callbacks of API-requests vanuit je marketingstack. Resultaat: betalingen worden geboekt, maar de bestelling wordt niet als betaald gemarkeerd.
3. Pagebuilder + thema-conflict
Elementor heeft een lange historie van updates die met bepaalde themes conflicteren. Een Elementor-update breekt dan hero-sections, knoppen of mobiele weergave op specifieke productpagina's. Vaak pas zichtbaar als een klant ze ontdekt.
4. Payment-plugin verandert API-versie
Mollie of Stripe deprecate periodiek oudere API-versies. Plugins moeten meegaan, en als de plugin-update niet samenvalt met je WooCommerce-update, kunnen er pinpas-betalingen mislukken zonder dat het systeem dat duidelijk meldt.
5. Te veel plugins werken samen via dezelfde hooks
WordPress heeft een hook-systeem (action en filter hooks) waar plugins op intekenen. Drie plugins die op dezelfde hook intekenen kunnen elkaars wijzigingen overschrijven, met onvoorspelbaar gedrag tot gevolg. Dat soort issues zijn loodzwaar te debuggen.
"Een WordPress-webshop is niet onveiliger dan andere systemen, maar wel onvoorspelbaarder. De winnaars zijn niet ondernemers met dure plugins, het zijn ondernemers met een sober pluginprofiel en een strikte testprocedure."
— Jesse Scherpen, eigenaar SharpClicks
Hoe je het risico beheerst
1. Maak voor elke update een backup
Volledige backup van bestanden en database, vóór elke serieuze plugin- of core-update. UpdraftPlus, BlogVault of WP Time Capsule doen dit prima. Drie maanden retentie minimaal, niet alleen één laatste backup.
2. Test op een staging-omgeving
Het belangrijkste advies dat de meeste shop-eigenaren overslaan. Een staging-omgeving is een 1-op-1 kopie van je site waar je updates eerst doorzet, alle flows test (toevoegen aan winkelwagen, checken, betalen, factuurmail) en pas live brengt als alles werkt. Veel hosting-pakketten (Cloudways, Kinsta, Pressable) bieden dit standaard.
3. Update in cycli, niet reactief
Maak van updates een gepland onderhoudsmoment. Ik adviseer eens per twee weken op een rustig moment (dinsdagochtend 08:00). Niet elke dag een paar plugins, want dan kun je nooit isoleren wat de oorzaak is van een issue.
4. Houd je pluginprofiel sober
Iedere plugin minder is een verlaagd update-risico. Vraag bij elke plugin: "levert dit echt waarde op, of is dit een nice-to-have die ooit ergens werd toegevoegd?" Vermoedelijk kun je 30-40 procent van je plugins schrappen zonder dat een klant het merkt.
5. Zet up monitoring
Tools als UptimeRobot, Updown.io of Sentry merken issues vaak eerder op dan je klanten. Stel alerts in op de checkout-flow, de winkelwagen, de betaalknop en specifieke productpagina's.
6. Kies voor goede hosting
Goedkope shared hosting met een trage MySQL is een ramp voor een webshop. Managed WordPress hosting (Cloudways, Kinsta, of Nederlands SiteGround/SiteSpeed) is duurder, maar levert betere uptime, snellere herstel en vaak ingebouwde backups en staging.
Wanneer is WordPress nog passend?
Voor een eenvoudige webshop met 50-500 producten, beperkte specials en een ondernemer die af en toe een hand wil leggen aan de techniek, is WordPress + WooCommerce nog steeds een redelijke keuze. Snelle time-to-market, lage instapkosten, breed ecosysteem.
Wanneer moet je nadenken over overstappen?
WordPress raakt zijn beste-keuze-status kwijt zodra je in een van deze situaties zit:
- Meer dan 1.000 SKU's, met regelmatige bulkupdates uit een ERP.
- Internationale verkoop met meerdere valuta, BTW-regimes en talen.
- Custom flows die niet in WooCommerce-plugins beschikbaar zijn (B2B-pricing per klant, custom checkout-stappen, abonnementsmodellen complex).
- Een team van twee of meer ontwikkelaars dat parallel aan code wil werken (WordPress is niet ontworpen voor moderne git-flows).
- Strenge performance-eisen waar caching-plugins niet meer voldoende zijn.
In die gevallen is een gespecialiseerde headless-aanpak (Next.js + Shopify, Next.js + Medusa, of een custom build) vaak ondanks de hogere initial cost goedkoper en betrouwbaarder over een drie-jaars-perspectief. Wij bouwen ze regelmatig vanuit onze maatwerk-software tak.
De mindset-shift voor stabiele WordPress-shops
De ondernemers die wij zien geen WordPress-rampen tegenkomen, hebben drie dingen gemeen:
- Ze beschouwen WordPress niet als gratis. Ze rekenen elk kwartaal een onderhoudsbudget af. Niet om iets nieuws te bouwen, maar om de bestaande boel werkend te houden.
- Ze hebben één duidelijke verantwoordelijke. Ofwel intern, ofwel een vast bureau, één persoon die updates plant en draait. Niet "iedereen" en dus niemand.
- Ze accepteren dat een nieuwe plugin een schuld is, geen feature. Elke nieuwe plugin betekent meer onderhoudsrisico. Voeg ze terughoudend toe.
Een praktische update-checklist
- Maandelijks (op dinsdag): alle plugins en core updaten op staging.
- Daarna testen: productpagina's, winkelwagen, checkout met test-creditcard, factuurmail-flow.
- Pas live brengen na groen licht.
- Eerst je laagste-traffic-uur: als je toch live update, doe het op een uur waarop weinig klanten in de checkout zitten.
- Houd 24-48 uur monitoring scherp: sommige issues komen pas onder volle last naar boven.
Conclusie
WordPress is niet inherent slecht voor webshops, maar wel veeleisender dan veel ondernemers vooraf inschatten. Met de juiste discipline (backups, staging, sober pluginprofiel, vaste verantwoordelijke, gepland updaten) is een WordPress-shop vele jaren stabiel te houden. Zonder die discipline wordt het een kostenpost vol verrassingen, en dat zijn de momenten waarop ondernemers ineens omzet kwijtraken aan technische issues.
Wij helpen MKB-bedrijven met onderhoud, optimalisatie en, waar passend, migratie naar moderne stacks. Wil je laten beoordelen of jouw shop op de juiste basis staat? Plan een kennismaking.
Hier kunnen we je mee helpen
- Websites: nieuwe of vernieuwde shops met een sobere, stabiele opzet.
- Maatwerk software: voor shops die uit WordPress zijn gegroeid en een custom oplossing nodig hebben.
- AI-automatisering: workflows voor productdata, voorraad-sync en order-monitoring zodat menselijke fouten in updates niet doorlekken naar klanten.
