Conflits de Plug-ins
Les conflits de plug-ins sont l'une des causes les plus courantes de problèmes avec WCPOS. Lorsque d'autres plug-ins WordPress interfèrent avec la fonctionnalité de WooCommerce ou de WCPOS, vous pouvez rencontrer des plantages, des problèmes de performance ou un comportement inattendu.
Signes de Conflits de Plug-ins
Vous pouvez avoir un conflit de plug-ins si vous rencontrez :
- Erreurs fatales - "Une erreur critique est survenue sur ce site web"
- Problèmes de performance - Chargement lent, délais d'attente ou charge serveur élevée
- Problèmes de fonctionnalité - Fonctionnalités ne fonctionnant pas comme prévu
- Problèmes de synchronisation des données - Produits, commandes ou clients ne se synchronisant pas correctement
- Problèmes de passerelle de paiement - Échecs de paiement ou erreurs de traitement des paiements
Avant de Commencer : Utilisez un Site de Préproduction
Ne jamais dépanner les conflits de plug-ins sur votre site en direct. Utilisez toujours un environnement de préproduction pour éviter de perturber vos opérations commerciales.
Qu'est-ce qu'un Site de Préproduction ?
Un site de préproduction est une copie exacte de votre site web en direct où vous pouvez tester des changements en toute sécurité sans affecter vos clients. La plupart des fournisseurs d'hébergement modernes offrent des environnements de préproduction en tant que fonctionnalité standard.
Si Votre Hébergeur N'offre Pas de Préproduction
Si votre fournisseur d'hébergement n'offre pas de sites de préproduction, envisagez de changer pour un hébergeur qui le fait. C'est une fonctionnalité standard de nos jours et essentielle pour :
- Les tests de plug-ins/thèmes en toute sécurité
- Les mises à jour de WordPress
- Le dépannage de problèmes
- Le travail de développement
Hébergeurs recommandés avec préproduction :
- WP Engine
- SiteGround
- Kinsta
- Cloudways
- Beaucoup d'autres
Étape 1 : Vérifiez les Erreurs Fatales
Si vous rencontrez des plantages ou des erreurs critiques, commencez par vérifier les journaux d'erreurs :
- Vérifiez les journaux WCPOS - Ouvrez l'écran des Journaux dans WCPOS pour tout message d'erreur
- Vérifiez les journaux d'erreurs fatales - Suivez le guide de dépannage des erreurs critiques pour trouver des messages d'erreur détaillés
- Notez les détails de l'erreur - Recherchez les noms de plug-ins ou les chemins de fichiers mentionnés dans l'erreur
Si vous trouvez une erreur fatale mentionnant un plug-in spécifique, c'est probablement le coupable. Vous pouvez désactiver ce plug-in et tester si le problème est résolu.
Étape 2 : La Méthode d'Élimination des Plug-ins
S'il n'y a pas d'erreurs fatales dans les journaux, ou si vous souhaitez identifier des conflits liés à la performance, utilisez cette approche systématique :
2.1 Créez une Base de Référence
- Accédez à votre site de préproduction
- Testez la fonctionnalité problématique - Notez exactement ce qui ne fonctionne pas ou qui est lent
- Enregistrez les métriques de performance - Si c'est un problème de performance, notez les temps d'exécution à partir des Journaux
2.2 Désactivez Tous les Plug-ins (Sauf les Essentiels)
Gardez ces plug-ins actifs :
- WooCommerce
- WCPOS
- WCPOS Pro (si vous l'avez)
Désactivez tout le reste :
- Allez dans
WP Admin > Plugins - Sélectionnez tous les autres plug-ins
- Choisissez "Désactiver" dans le menu déroulant des actions groupées
- Cliquez sur "Appliquer"
2.3 Testez le Problème
- Effacez tous les caches - Si vous utilisez des plug-ins de mise en cache, videz tous les caches
- Testez la fonctionnalité problématique - Est-ce que cela fonctionne maintenant ?
- Vérifiez la performance - Les temps d'exécution se sont-ils améliorés ?
Si le problème est résolu : Vous avez un conflit de plug-ins. Passez à l'Étape 2.4.
Si le problème persiste : Le problème n'est probablement pas un conflit de plug-in. Envisagez :
- Problèmes de ressources serveur (voir Performance du Serveur)
- Conflits de thèmes (voir Étape 3)
- Problèmes essentiels de WordPress/WooCommerce
2.4 Activez les Plug-ins Un par Un
Maintenant, vous devez identifier quel plug-in cause le conflit :
- Activez un plug-in - Commencez par les plus essentiels
- Testez la fonctionnalité - Vérifiez si le problème revient
- Si aucun problème - Activez le plug-in suivant et testez à nouveau
- Si le problème revient - Vous avez trouvé le plug-in en conflit !
Ordre de Priorité des Plug-ins (activez dans cet ordre) :
- Plug-ins de sécurité - Wordfence, Sucuri, etc.
- Plug-ins SEO - Yoast, RankMath, etc.
- Plug-ins de performance - Mise en cache, optimisation
- Passerelles de paiement - Stripe, PayPal, etc.
- Autres extensions WooCommerce
- Plug-ins WordPress généraux
2.5 Documentez Vos Conclusions
Lorsque vous identifiez le plug-in en conflit :
- Notez le nom et la version du plug-in
- Documentez le problème spécifique qu'il cause
- Vérifiez s'il existe une version mise à jour disponible
- Recherchez des plug-ins alternatifs offrant une fonctionnalité similaire
Étape 3 : Vérifiez les Conflits de Thèmes
Bien que les thèmes aient rarement un impact sur WCPOS (car il utilise sa propre interface), ils peuvent parfois causer des problèmes avec :
- Les processus de paiement (si utilisant la passerelle de paiement web)
- La fonctionnalité de la zone d’administration
- Les réponses de l'API
Testez avec un Thème par Défaut
- Sur votre site de préproduction, changez pour un thème WordPress par défaut :
- Vingt Vingt-Quatre
- Vingt Vingt-Trois
- Vingt Vingt-Deux
- Testez la fonctionnalité problématique
- Si le problème est résolu - Votre thème a un conflit
Les thèmes sont beaucoup moins susceptibles de causer des problèmes avec WCPOS par rapport aux plug-ins. L'interface du POS fonctionne indépendamment de votre thème. Cependant, les thèmes peuvent affecter :
- Les pages de paiement de WooCommerce
- La fonctionnalité de l'administration WordPress
- Les réponses de l'API REST
Étape 4 : Résoudre les Conflits de Plug-ins
Une fois que vous avez identifié le plug-in en conflit, vous avez plusieurs options :
Option 1 : Mettre à Jour le Plug-in
- Vérifiez les mises à jour - Le conflit peut être corrigé dans une version plus récente
- Mettez à jour le plug-in sur votre site de préproduction d'abord
- Testez soigneusement avant de mettre à jour sur le site en direct
Option 2 : Trouver une Alternative
- Recherchez des plug-ins alternatifs qui offrent la même fonctionnalité
- Testez les alternatives sur votre site de préproduction
- Migrez les réglages si vous changez de plug-in
Option 3 : Contacter le Développeur du Plug-in
- Signalez le conflit au développeur du plug-in
- Fournissez des informations détaillées :
- Versions des plug-ins concernés
- Versions de WordPress et WooCommerce
- Messages d'erreur ou comportement exact
- Étapes pour reproduire le problème
Option 4 : Solution Personnalisée
Pour les plug-ins essentiels qui ne peuvent pas être remplacés :
- Contactez un développeur WordPress pour créer une solution personnalisée
- Envisagez des hooks spécifiques au plug-in pour désactiver la fonctionnalité en conflit
- Utilisez une logique conditionnelle pour désactiver le plug-in sur les pages liées au POS
Types Communs de Plug-ins en Conflit
Catégories de Plug-ins à Haut Risque
Plug-ins de Sécurité :
- Peuvent bloquer les demandes d'API
- Peuvent interférer avec l'authentification
- Ont souvent des règles de pare-feu agressives
Plug-ins de Mise en Cache :
- Peuvent mettre en cache les réponses d'API de manière inappropriée
- Peuvent interférer avec les données en temps réel
- Peuvent causer des problèmes de données obsolètes
Plug-ins SEO :
- Des plug-ins lourds peuvent ralentir la zone d'administration
- Peuvent ajouter des requêtes de base de données inutiles
- Peuvent interférer avec les réponses de l'API REST
Constructeurs de Pages :
- Chargent souvent des scripts lourds dans la zone d'administration
- Peuvent entrer en conflit avec les pages administratives de WooCommerce
- Peuvent interférer avec les processus de paiement
Plug-ins d'Adhésion/Restriction :
- Peuvent bloquer l'accès à l'API
- Peuvent interférer avec l'authentification des utilisateurs
- Peuvent restreindre l'accès aux ressources nécessaires
Catégories de Plug-ins à Risque Inférieur
Formulaires de Contact : N'interfèrent généralement pas avec WCPOS Plug-ins de Réseaux Sociaux : Rarement en conflit Plug-ins d'Analytique : Généralement sûrs à moins d'être très lourds Plug-ins de Contenu de Base : Compatibles dans la majorité des cas
Conflits de Plug-ins Connus
Les plug-ins ci-dessous sont connus pour interférer avec WCPOS. De nombreux problèmes ont déjà été corrigés automatiquement dans les versions récentes de WCPOS — la mise à jour vers la dernière version les résout sans aucune configuration.
Le point commun : WCPOS s'appuie sur l'API REST de WooCommerce et affiche certains flux (connexion, paiement, reçus) dans des iframes. La correction habituelle consiste à exclure les points de terminaison/URL du POS (/wp-json/wcpos/, /wp-json/wc/v3/, et le chemin /pos/) de l'autre plug-in — et non à le désactiver entièrement.
Plug-ins de sécurité et de connexion
Ce sont la source de conflits la plus courante, en particulier pour la connexion via l'application de bureau/mobile.
| Plug-in | Symptôme | Correction |
|---|---|---|
| Wordfence | Le pare-feu bloque l'API REST ; le champ du code 2FA ne s'affiche pas dans l'iframe de connexion ; une CSP restrictive peut bloquer les ressources du POS | Mettez /wp-json/wcpos/ et /wp-json/wc/v3/ sur liste blanche dans le pare-feu. Pour le 2FA : désactivez-le temporairement pour les utilisateurs POS. La CSP est supprimée automatiquement à partir de la v1.9.0+ |
| Really Simple Security | Bloque l'accès à l'API / force des redirections | Désactivez toute restriction de l'API REST dans les paramètres Advanced du plug-in |
| WPS Hide Login | L'URL de connexion personnalisée casse l'iframe de connexion de l'application | Utilisez l'URL de connexion standard /wp-admin/ pour l'accès au POS |
| iThemes / Solid Security | Bloque l'API REST ou déclenche des verrouillages anti-force-brute à partir des appels du POS | Mettez sur liste blanche uniquement les points de terminaison du POS et l'IP du serveur lui-même — évitez les règles d'IP générales |
| Sucuri | Le WAF bloque les requêtes API | Mettez sur liste blanche les points de terminaison de l'API REST dans le tableau de bord Sucuri |
| Security Optimizer | Bloque la connexion administrateur au POS (« use customize login URL ») | Connectez-vous d'abord à WP Admin via l'URL personnalisée, puis allez sur /pos |
| Force Login (et plug-ins d'authentification REST similaires) | /wp-json/ renvoie 401/403 ; les anciennes applications signalaient « Site does not seem to be a WordPress site » | Autorisez l'accès non authentifié aux points de terminaison du POS, ou désactivez-le pendant la connexion initiale. Les applications v1.x affichent désormais le vrai message d'erreur |
| LoginPress | Force la connexion par email ; casse la connexion POS multi-utilisateurs | Autorisez la connexion par nom d'utilisateur, ou désactivez-le pour l'accès au POS |
| JWT Authentication plugins | 403 sur toutes les requêtes API du POS après activation (la connexion peut réussir, tout le reste échoue) | Corrigé automatiquement à partir de la v1.8.x+. Sur les versions plus anciennes, désactivez le plug-in JWT ou excluez les points de terminaison du POS |
| Captcha / reCAPTCHA | Boucle de connexion dans l'application de bureau (le captcha ne peut pas s'afficher dans l'iframe) | Désactivez le captcha pour l'URL de connexion du POS |
| Defender Pro | L'en-tête X-Frame-Options bloque toutes les iframes du POS (connexion, paiement, reçus) | Ajoutez une exception spécifique au POS pour /pos/ plutôt que de désactiver X-Frame-Options sur tout le site |
| Jetpack CRM Client Portal | Casse entièrement la connexion au POS | Désactivez uniquement l'extension Client Portal |
Plug-ins de performance, de mise en cache et d'optimisation
| Plug-in | Symptôme | Correction |
|---|---|---|
| WP Rocket, Autoptimize, Hummingbird, Smush | Le report/la minification du JS casse le paiement et Stripe Terminal | Excluez les URL /pos/ de l'optimisation du JS |
| LiteSpeed Cache | Boucle de rechargement constante au paiement dans l'application de bureau ; CSP restrictive | Mettez WCPOS à jour, purgez le cache, excluez les pages du POS de la mise en cache. La CSP est supprimée automatiquement à partir de la v1.9.0+ |
| Image Prioritizer | Sature l'en-tête HTTP Link, cassant la découverte de l'API REST ; l'application de bureau affiche « does not appear to be a WordPress site » | Désactivez le plug-in |
Constructeurs de pages et injecteurs front-end
| Plug-in | Symptôme | Correction |
|---|---|---|
| Elementor | elementor-frontend.js casse l'accordéon de paiement dans l'iframe du POS — les méthodes de paiement ne se déploient pas | Excluez les pages du POS du chargement des scripts Elementor |
| Omnisend / plug-ins marketing | Injectent des scripts dans l'iframe de paiement, cassant la mise en page et les paiements | Utilisez les Checkout Settings du POS pour désactiver les scripts non essentiels |
| MyStickyElements / Complianz | Injectent des superpositions (boutons fixes, bannières de cookies) dans l'iframe de paiement | Configurez-les pour exclure les URL /pos/ |
Extensions WooCommerce et autres plug-ins
| Plug-in | Symptôme | Correction |
|---|---|---|
| WooCommerce Subscriptions | Conflit du script de migration lors de la mise à niveau v1.7→v1.8 | Désactivez Subscriptions, activez POS Pro (laissez la migration s'exécuter), puis réactivez-le |
| WP Activity Log | Journalise chaque action du POS → gonflement des postmeta → « only 10 products » | Désactivez-le, ou excluez les types de publication du POS de la journalisation |
Jetpack / Astra / Xero (tout ce qui s'accroche à save_post) | Lignes de métadonnées en double à chaque appel de l'API du POS (une boutique a atteint 36 867 lignes sur un seul produit) | Corrigé automatiquement à partir de la v1.8.12+ (gratuit) / v1.8.14+ (Pro) avec une migration de nettoyage — mettez simplement à jour |
| Stripe Tax | Incompatible avec les commandes créées via l'API REST (la façon dont le POS crée les commandes) | Aucune solution de contournement — incompatible |
| Mollie | Peut masquer la méthode BACS (virement bancaire) du paiement du POS | Mettez Mollie à jour vers la dernière version |
| CTX Feed | Erreurs 403 intermittentes sur la page des paramètres du POS | Désactivez-le pour confirmer ; aucune solution de contournement connue |
| Plug-ins tiers de scanner de codes-barres | Corrompent le JSON de l'API des commandes, cassant la création/l'affichage des commandes | Désactivez-les ; utilisez la lecture de codes-barres intégrée au POS |
| MailerLite (Signup Forms + WooCommerce) | Erreur 500 à la création de commande POS (épuisement de la mémoire) | Désactivez-le pour confirmer, puis contactez MailerLite |
| The Courier Guy Shipping | La création de commande POS échoue avec une erreur serveur | Revenez à une version précédente, ou contactez le développeur |
| PixelYourSite / PixelMySite | Erreur fatale : call to member function is_type() on bool | Désactivez-le temporairement |
| Google Listings & Ads | Conflit d'autoloader → erreur critique « Class WCPOS\…\Stores not found » | Supprimez tous les plug-ins POS et réinstallez uniquement la dernière version Pro autonome |
La passerelle Stripe Terminal doit être activée uniquement dans les paramètres du POS, jamais dans WooCommerce > Settings > Payments. L'activer globalement la fait apparaître sur le paiement de votre boutique publique et fait planter le flux de paiement en ligne.
Conflits au niveau du serveur
| Source | Symptôme | Correction |
|---|---|---|
En-têtes CSP personnalisés (.htaccess, Nginx, ou un plug-in de sécurité) | POS bloqué sur le logo ; JS/CSS bloqués | Supprimés automatiquement sur les pages du POS à partir de la v1.9.0+. Pour une CSP au niveau du serveur, autorisez cdn.jsdelivr.net dans script-src/style-src, ou ajoutez une exception /pos/ |
| GoDaddy Website Firewall | Bloque /wp-json/ (« Received 'undefined' ») | Autorisez le chemin d'URL /wp-json/ dans le pare-feu — voir Performance du Serveur |
Conseils de Prévention
Maintenance Régulière
- Gardez les plug-ins à jour - Utilisez toujours les dernières versions
- Supprimez les plug-ins inutilisés - Ne vous contentez pas de les désactiver, supprimez-les
- Testez les mises à jour sur la préproduction avant de les appliquer au site en direct
- Surveillez la performance régulièrement en utilisant les métriques de Performance du Serveur
Meilleures Pratiques pour le Choix des Plug-ins
- Choisissez des développeurs réputés - Vérifiez les avis et la fréquence des mises à jour
- Évitez les fonctionnalités redondantes - N'installez pas plusieurs plug-ins qui font la même chose
- Lisez les informations de compatibilité - Vérifiez si les plug-ins sont testés avec WooCommerce
- Commencez avec des plug-ins minimaux - Ajoutez des fonctionnalités progressivement au besoin
Obtenir de l'Aide
Si vous n'êtes pas en mesure de résoudre le conflit de plug-ins :
Pour les Utilisateurs Pro
Les utilisateurs pro reçoivent un support prioritaire pour la résolution des conflits de plug-ins. Notre équipe peut vous aider à identifier et à résoudre les conflits pour vous.
Support Communautaire
Lors de la Contacter le Support
Veuillez fournir :
- Liste des plug-ins actifs avec versions
- Versions de WordPress et WooCommerce
- Description détaillée du problème
- Étapes que vous avez déjà essayées
- Messages d'erreur des journaux
- Métriques de performance du serveur si pertinent