Ga naar de hoofdinhoud
Versie: 1.x

Pluginconflicten

Pluginconflicten zijn een van de meest voorkomende oorzaken van problemen met WCPOS. Wanneer andere WordPress-plugins de functionaliteit van WooCommerce of WCPOS verstoren, kun je crashes, prestatieproblemen of onverwacht gedrag ondervinden.

Tekenen van pluginconflicten

Je hebt mogelijk een pluginconflict als je het volgende ervaart:

  • Fatale fouten - "There has been a critical error on this website"
  • Prestatieproblemen - Traag laden, time-outs of hoge serverbelasting
  • Functionaliteitsproblemen - Functies werken niet zoals verwacht
  • Synchronisatieproblemen met gegevens - Producten, bestellingen of klanten synchroniseren niet correct
  • Problemen met betaalgateways - Afrekenfouten of fouten bij het verwerken van betalingen

Voordat je begint: gebruik een staging-site

Belangrijk

Los pluginconflicten nooit op je live site op. Gebruik altijd een staging-omgeving om verstoring van je bedrijfsvoering te voorkomen.

Wat is een staging-site?

Een staging-site is een exacte kopie van je live website waar je veilig wijzigingen kunt testen zonder je klanten te beïnvloeden. De meeste moderne hostingproviders bieden staging-omgevingen als standaardfunctie.

Als je host geen staging aanbiedt

Als je hostingprovider geen staging-sites aanbiedt, overweeg dan om over te stappen naar een host die dat wel doet. Dit is tegenwoordig een standaardfunctie en essentieel voor:

  • Veilig testen van plugins/thema's
  • WordPress-updates
  • Het oplossen van problemen
  • Ontwikkelingswerk

Aanbevolen hosts met staging:

  • WP Engine
  • SiteGround
  • Kinsta
  • Cloudways
  • Vele anderen

Stap 1: Controleer op fatale fouten

Als je crashes of kritieke fouten ondervindt, begin dan met het controleren van de foutlogs:

  1. Controleer WCPOS-logs - Open het Logs-scherm in WCPOS op eventuele foutmeldingen
  2. Controleer fatale-foutlogs - Volg de handleiding voor probleemoplossing bij kritieke fouten om gedetailleerde foutmeldingen te vinden
  3. Noteer de foutdetails - Zoek naar pluginnamen of bestandspaden die in de fout worden genoemd

Als je een fatale fout vindt die een specifieke plugin noemt, is dat waarschijnlijk je boosdoener. Je kunt die plugin uitschakelen en testen of het probleem is opgelost.

Stap 2: De plugin-eliminatiemethode

Als er geen fatale fouten in de logs staan, of als je prestatiegerelateerde conflicten wilt identificeren, gebruik dan deze systematische aanpak:

2.1 Maak een uitgangspunt

  1. Open je staging-site
  2. Test de problematische functionaliteit - Noteer precies wat niet werkt of traag is
  3. Registreer prestatiegegevens - Als het een prestatieprobleem is, noteer dan de uitvoeringstijden uit de Logs

2.2 Schakel alle plugins uit (behalve de essentiële)

Houd deze plugins actief:

  • WooCommerce
  • WCPOS
  • WCPOS Pro (als je die hebt)

Schakel al het andere uit:

  1. Ga naar WP Admin > Plugins
  2. Selecteer alle andere plugins
  3. Kies "Deactivate" uit het vervolgkeuzemenu voor bulkacties
  4. Klik op "Apply"

2.3 Test het probleem

  1. Wis eventuele caches - Als je caching-plugins gebruikt, wis dan alle caches
  2. Test de problematische functionaliteit - Werkt het nu?
  3. Controleer de prestaties - Zijn de uitvoeringstijden verbeterd?

Als het probleem is opgelost: Je hebt een pluginconflict. Ga verder met Stap 2.4.

Als het probleem aanhoudt: Het probleem is waarschijnlijk geen pluginconflict. Overweeg:

  • Problemen met serverbronnen (zie Serverprestaties)
  • Themaconflicten (zie Stap 3)
  • Problemen met de WordPress/WooCommerce-kern

2.4 Schakel plugins één voor één in

Nu moet je identificeren welke plugin het conflict veroorzaakt:

  1. Schakel één plugin in - Begin met de meest essentiële
  2. Test de functionaliteit - Controleer of het probleem terugkeert
  3. Als er geen probleem is - Schakel de volgende plugin in en test opnieuw
  4. Als het probleem terugkeert - Je hebt de conflicterende plugin gevonden!

Prioriteitsvolgorde van plugins (schakel in deze volgorde in):

  1. Beveiligingsplugins - Wordfence, Sucuri, enz.
  2. SEO-plugins - Yoast, RankMath, enz.
  3. Prestatieplugins - Caching, optimalisatie
  4. Betaalgateways - Stripe, PayPal, enz.
  5. Andere WooCommerce-extensies
  6. Algemene WordPress-plugins

2.5 Documenteer je bevindingen

Wanneer je de conflicterende plugin identificeert:

  1. Noteer de naam en versie van de plugin
  2. Documenteer het specifieke probleem dat deze veroorzaakt
  3. Controleer of er een bijgewerkte versie beschikbaar is
  4. Zoek naar alternatieve plugins die vergelijkbare functionaliteit bieden

Stap 3: Controleer op themaconflicten

Hoewel thema's WCPOS zelden beïnvloeden (omdat het zijn eigen interface gebruikt), kunnen ze soms problemen veroorzaken met:

  • Afrekenprocessen (bij gebruik van de webafreken-gateway)
  • Functionaliteit van het beheergedeelte
  • API-reacties

Test met een standaardthema

  1. Schakel op je staging-site over naar een standaard WordPress-thema:
    • Twenty Twenty-Four
    • Twenty Twenty-Three
    • Twenty Twenty-Two
  2. Test de problematische functionaliteit
  3. Als het probleem is opgelost - Je thema heeft een conflict
Impact van thema's

Thema's veroorzaken veel minder snel WCPOS-problemen dan plugins. De POS-interface werkt onafhankelijk van je thema. Thema's kunnen echter wel invloed hebben op:

  • WooCommerce-afrekenpagina's
  • Functionaliteit van het WordPress-beheergedeelte
  • REST API-reacties

Stap 4: Pluginconflicten oplossen

Zodra je de conflicterende plugin hebt geïdentificeerd, heb je verschillende opties:

Optie 1: Werk de plugin bij

  1. Controleer op updates - Het conflict is mogelijk opgelost in een nieuwere versie
  2. Werk de plugin bij op je staging-site eerst
  3. Test grondig voordat je bijwerkt op de live site

Optie 2: Zoek een alternatief

  1. Onderzoek alternatieve plugins die dezelfde functionaliteit bieden
  2. Test alternatieven op je staging-site
  3. Migreer instellingen als je van plugin wisselt

Optie 3: Neem contact op met de plugin-ontwikkelaar

  1. Meld het conflict bij de plugin-ontwikkelaar
  2. Geef gedetailleerde informatie:
    • Betrokken pluginversies
    • WordPress- en WooCommerce-versies
    • Exacte foutmeldingen of gedrag
    • Stappen om het probleem te reproduceren

Optie 4: Aangepaste oplossing

Voor essentiële plugins die niet kunnen worden vervangen:

  1. Neem contact op met een WordPress-ontwikkelaar om een aangepaste oplossing te maken
  2. Overweeg plugin-specifieke hooks om conflicterende functionaliteit uit te schakelen
  3. Gebruik voorwaardelijke logica om de plugin uit te schakelen op POS-gerelateerde pagina's

Veelvoorkomende conflicterende plugintypen

Plugincategorieën met een hoog risico

Beveiligingsplugins:

  • Kunnen API-verzoeken blokkeren
  • Kunnen de authenticatie verstoren
  • Hebben vaak agressieve firewallregels

Caching-plugins:

  • Kunnen API-reacties op ongepaste wijze cachen
  • Kunnen realtime gegevens verstoren
  • Kunnen problemen met verouderde gegevens veroorzaken

SEO-plugins:

  • Zware plugins kunnen het beheergedeelte vertragen
  • Kunnen onnodige databasequery's toevoegen
  • Kunnen REST API-reacties verstoren

Page builders:

  • Laden vaak zware scripts in het beheergedeelte
  • Kunnen conflicteren met WooCommerce-beheerpagina's
  • Kunnen afrekenprocessen verstoren

Lidmaatschaps-/beperkingsplugins:

  • Kunnen API-toegang blokkeren
  • Kunnen gebruikersauthenticatie verstoren
  • Kunnen de toegang tot vereiste resources beperken

Plugincategorieën met een lager risico

Contactformulieren: Verstoren WCPOS doorgaans niet Social media-plugins: Veroorzaken zelden conflicten Analyseplugins: Over het algemeen veilig, tenzij erg zwaar Basis-contentplugins: Doorgaans compatibel

Bekende pluginconflicten

De onderstaande plugins staan erom bekend WCPOS te verstoren. Veel problemen zijn al automatisch opgelost in recente WCPOS-versies — bijwerken naar de nieuwste versie lost deze zonder enige configuratie op.

De meeste oplossingen zijn "sluit de POS uit"

De rode draad: WCPOS vertrouwt op de WooCommerce REST API en geeft sommige flows (login, betaling, bonnen) weer in iframes. De gebruikelijke oplossing is om de POS-endpoints/URL's uit te sluiten (/wp-json/wcpos/, /wp-json/wc/v3/ en het /pos/-pad) van de andere plugin — niet om deze volledig uit te schakelen.

Beveiligings- en login-plugins

Dit zijn de meest voorkomende bron van conflicten, vooral voor login via de desktop-/mobiele app.

PluginSymptoomOplossing
WordfenceFirewall blokkeert REST API; 2FA-codeveld wordt niet weergegeven in de login-iframe; restrictieve CSP kan POS-assets blokkerenZet /wp-json/wcpos/ en /wp-json/wc/v3/ op de whitelist in de firewall. Voor 2FA: schakel het tijdelijk uit voor POS-gebruikers. CSP wordt automatisch verwijderd in v1.9.0+
Really Simple SecurityBlokkeert API-toegang / forceert omleidingenSchakel eventuele REST API-beperkingen uit in de Advanced-instellingen van de plugin
WPS Hide LoginAangepaste login-URL breekt de login-iframe van de appGebruik de standaard /wp-admin/-login-URL voor POS-toegang
iThemes / Solid SecurityBlokkeert REST API of activeert brute-force-vergrendelingen door POS-aanroepenZet alleen de POS-endpoints en het eigen IP van de server op de whitelist — vermijd algemene IP-regels
SucuriWAF blokkeert API-verzoekenZet de REST API-endpoints op de whitelist in het Sucuri-dashboard
Security OptimizerBlokkeert POS-login van beheerder ("use customize login URL")Log eerst in op WP Admin via de aangepaste URL, ga dan naar /pos
Force Login (en vergelijkbare REST-auth-plugins)/wp-json/ geeft 401/403 terug; oudere apps meldden "Site does not seem to be a WordPress site"Sta niet-geauthenticeerde toegang tot de POS-endpoints toe, of schakel uit tijdens de eerste verbinding. v1.x-apps tonen nu de echte foutmelding
LoginPressForceert login op basis van e-mail; breekt multi-user POS-loginSta login met gebruikersnaam toe, of schakel uit voor POS-toegang
JWT Authentication plugins403 op alle POS API-verzoeken na activering (login kan slagen, al het andere mislukt)Automatisch opgelost in v1.8.x+. Op oudere versies, deactiveer de JWT-plugin of sluit de POS-endpoints uit
Captcha / reCAPTCHALogin-lus in de desktop-app (captcha kan niet worden weergegeven in de iframe)Schakel captcha uit voor de POS-login-URL
Defender ProX-Frame-Options-header blokkeert alle POS-iframes (login, betaling, bonnen)Voeg een POS-specifieke uitzondering toe voor /pos/ in plaats van X-Frame-Options site-breed uit te schakelen
Jetpack CRM Client PortalBreekt de POS-login volledigSchakel alleen de Client Portal-extensie uit

Prestatie-, caching- en optimalisatieplugins

PluginSymptoomOplossing
WP Rocket, Autoptimize, Hummingbird, SmushDefer/minify van JS breekt afrekenen en Stripe TerminalSluit /pos/-URL's uit van JS-optimalisatie
LiteSpeed CacheConstante herlaad-lus bij het afrekenen in de desktop-app; restrictieve CSPWerk WCPOS bij, leeg de cache, sluit POS-pagina's uit van caching. CSP automatisch verwijderd in v1.9.0+
Image PrioritizerSpamt de HTTP Link-header, waardoor REST API-detectie breekt; desktop-app toont "does not appear to be a WordPress site"Deactiveer de plugin

Page builders & front-end-injectors

PluginSymptoomOplossing
Elementorelementor-frontend.js breekt de afreken-accordion binnen de POS-iframe — betaalmethoden klappen niet uitSluit POS-pagina's uit van het laden van Elementor-scripts
Omnisend / marketingpluginsInjecteren scripts in de afreken-iframe, waardoor lay-out en betalingen brekenGebruik POS Checkout Settings om niet-essentiële scripts uit te schakelen
MyStickyElements / ComplianzInjecteren overlays (sticky knoppen, cookiebanners) in de afreken-iframeConfigureer ze om /pos/-URL's uit te sluiten

WooCommerce-extensies en andere plugins

PluginSymptoomOplossing
WooCommerce SubscriptionsConflict met migratiescript tijdens de upgrade van v1.7→v1.8Deactiveer Subscriptions, activeer POS Pro (laat de migratie draaien), schakel het dan weer in
WP Activity LogLogt elke POS-actie → postmeta-bloat → "only 10 products"Schakel het uit, of sluit POS-posttypen uit van logging
Jetpack / Astra / Xero (alles dat inhaakt op save_post)Dubbele meta-rijen bij elke POS API-aanroep (één winkel bereikte 36.867 rijen op één product)Automatisch opgelost in v1.8.12+ (gratis) / v1.8.14+ (Pro) met een opschoonmigratie — werk gewoon bij
Stripe TaxIncompatibel met via de REST API aangemaakte bestellingen (zoals de POS bestellingen aanmaakt)Geen tijdelijke oplossing — incompatibel
MollieKan de BACS-methode (bankoverschrijving) verbergen bij het POS-afrekenenWerk Mollie bij naar de nieuwste versie
CTX FeedSporadische 403-fouten op de POS-instellingenpaginaDeactiveer ter bevestiging; geen bekende oplossing
Plugins voor barcodescanners van derdenBeschadigen de bestellings-API-JSON, waardoor het aanmaken/weergeven van bestellingen breektSchakel ze uit; gebruik de ingebouwde barcodescanning van de POS
MailerLite (Signup Forms + WooCommerce)500-fout bij het aanmaken van POS-bestellingen (geheugen uitgeput)Deactiveer ter bevestiging, neem dan contact op met MailerLite
The Courier Guy ShippingHet aanmaken van POS-bestellingen mislukt met een serverfoutRol terug naar een vorige versie, of neem contact op met de ontwikkelaar
PixelYourSite / PixelMySiteFatale fout: call to member function is_type() on boolTijdelijk uitschakelen
Google Listings & AdsAutoloader-conflict → "Class WCPOS\…\Stores not found" kritieke foutVerwijder alle POS-plugins en installeer alleen de nieuwste Pro standalone opnieuw
Stripe Terminal: schakel het niet globaal in

De Stripe Terminal-gateway moet alleen binnen POS Settings worden ingeschakeld, nooit in WooCommerce > Settings > Payments. Het globaal inschakelen zorgt ervoor dat het op het afrekenen van je openbare winkel verschijnt en laat de online afreken-flow crashen.

Conflicten op serverniveau

BronSymptoomOplossing
Aangepaste CSP-headers (.htaccess, Nginx of een beveiligingsplugin)POS blijft hangen op het logo; JS/CSS geblokkeerdAutomatisch verwijderd op POS-pagina's in v1.9.0+. Voor CSP op serverniveau, sta cdn.jsdelivr.net toe in script-src/style-src, of voeg een /pos/-uitzondering toe
GoDaddy Website FirewallBlokkeert /wp-json/ ("Received 'undefined'")Sta het /wp-json/-URL-pad toe in de firewall — zie Serverprestaties

Preventietips

Regelmatig onderhoud

  1. Houd plugins bijgewerkt - Gebruik altijd de nieuwste versies
  2. Verwijder ongebruikte plugins - Deactiveer ze niet alleen, verwijder ze
  3. Test updates op staging voordat je ze toepast op de live site
  4. Bewaak de prestaties regelmatig met behulp van de Serverprestaties-gegevens

Best practices voor pluginselectie

  1. Kies betrouwbare ontwikkelaars - Controleer beoordelingen en updatefrequentie
  2. Vermijd overbodige functionaliteit - Installeer niet meerdere plugins die hetzelfde doen
  3. Lees compatibiliteitsinformatie - Controleer of plugins zijn getest met WooCommerce
  4. Begin met minimale plugins - Voeg functionaliteit geleidelijk toe naarmate dat nodig is

Hulp krijgen

Als je het pluginconflict niet kunt oplossen:

Voor Pro-gebruikers

Pro-ondersteuning

Pro-gebruikers ontvangen prioriteitsondersteuning voor het oplossen van pluginconflicten. Ons team kan je helpen conflicten te identificeren en op te lossen.

Community-ondersteuning

Bij het contact opnemen met ondersteuning

Geef het volgende op:

  1. Lijst met actieve plugins met versies
  2. WordPress- en WooCommerce-versies
  3. Gedetailleerde beschrijving van het probleem
  4. Stappen die je al hebt geprobeerd
  5. Foutmeldingen uit de logs
  6. Serverprestatiegegevens indien relevant