
Quand WooCommerce tousse, votre chiffre d’affaires s’essouffle.
Ici, on va faire un vrai diagnostic (pas du “on a tout désactivé au hasard”) : vous allez isoler la cause, lire les journaux, tester proprement, corriger, puis valider un parcours d’achat complet. Objectif : moins de stress, plus de ventes, et un site web qui tient la charge.
Si vous avez besoin d’un cadre plus large côté WordPress (pannes globales, erreurs serveur, écran blanc), gardez sous la main notre protocole de dépannage WordPress.
Prérequis et préparation (le “bilan vital” avant traitement)
Avant toute petite chirurgie, on sécurise le patient. Le dépannage WooCommerce implique souvent des manipulations (désactiver des plugins, changer de thème, toucher aux réglages) qui peuvent impacter le checkout.
- Accès : admin WordPress, accès hébergeur, FTP/SFTP, accès base de données si possible.
- Temps & difficulté : de “rapide pansement” à “analyse approfondie” selon le symptôme.
- Checklist : sauvegarde + staging + accès FTP (indispensable si l’admin est instable).
- Versions : PHP, WordPress, WooCommerce, thème, extensions.
- Dernier changement : mise à jour, nouvelle extension, règle cache/sécurité, modification de paiement.
Astuce de praticien : si le problème est apparu “du jour au lendemain”, cherchez d’abord la cause la plus récente (mise à jour, nouvelle règle WAF, changement DNS/CDN, nouveau plugin). C’est souvent là que se cache “l’infection”.
Isoler la cause sans casser la boutique
Le but est simple : reproduire le symptôme de façon contrôlée, puis réduire le champ des causes possibles. Sur WooCommerce, une erreur peut venir du paiement, du stock, des emails ou de l’affichage — et ces zones interagissent.
Flux : Panier → Checkout → Paiement → Création commande → Email/stock → Confirmation
Procédure recommandée :
- Reproduisez le bug avec une commande test (produit simple + livraison standard).
- Notez le message exact et le moment précis (au clic “Commander”, après redirection, au chargement du panier, etc.).
- Activez des logs (WooCommerce + serveur) pour arrêter de “deviner”.
- Segmentez : paiement / stock / emails / affichage (une piste à la fois).
- Documentez : capture + heure + utilisateur test + produit test (ça vaut de l’or en support).
Pour activer la journalisation WordPress proprement, suivez la documentation officielle Developer WordPress.org (c’est la référence la plus fiable pour WP_DEBUG).
Snippet : activer WP_DEBUG et WP_DEBUG_LOG (sans afficher les erreurs aux clients)
À placer dans wp-config.php (sur staging idéalement) :
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
Hygiène : une fois le dépannage terminé, désactivez le debug et supprimez/archivez le fichier de log. Un log est utile, mais ce n’est pas un poster publicitaire de vos chemins serveurs.
Collecter les indices et lire les journaux (la radio + la prise de sang)
Quand WooCommerce “fait une crise”, les journaux disent souvent exactement quel fichier ou quel module est en cause. L’objectif : identifier le facteur déclenchant (erreur PHP, exception, timeout, webhook KO, action planifiée bloquée).
- Consultez les logs WooCommerce (statut/logs) et les erreurs PHP côté hébergeur.
- Repérez : erreur critique, fichier impliqué, extension mentionnée, ligne, endpoint.
- Vérifiez les actions planifiées (Action Scheduler) et les tâches cron WordPress.
- Contrôlez mémoire PHP et temps d’exécution (symptômes : checkout qui mouline, admin lente).
- Isolez API & webhooks (paiement, expédition, automatisations).
Pour WooCommerce, appuyez-vous sur :
Documentation WooCommerce (System Status Report) et WooCommerce Developer Docs (Logging). Ces pages vous guident pour lire l’état du système, extraire un rapport, et comprendre où sont stockés les logs (fichiers ou base).
Cas concret (vu en consultation) : un checkout qui échoue “au hasard” n’est pas aléatoire. Dans les logs, on retrouve souvent une action planifiée en échec (email, paiement, synchronisation stock) qui s’empile, fatigue le serveur, puis fait “tomber” la page au pire moment.
Tester extensions et thème actif (isoler l’allergène)
Si votre boutique est un organisme, les extensions sont parfois… des médicaments. Bien dosés, ils aident. Trop nombreux (ou incompatibles), ils provoquent des effets secondaires.
- Désactivez les extensions par lots sur staging (pas en production si possible).
- Basculez temporairement sur un thème par défaut ou Storefront pour vérifier un conflit d’affichage.
- Surveillez les conflits cache/sécurité/optimisation (minification JS, lazy load agressif, WAF).
- Contrôlez shortcodes et blocs produits (erreurs de rendu = JS cassé, templates obsolètes).
- Validez compatibilités de versions et dépendances (PHP trop ancien, plugin non maintenu).
Bon réflexe : si le problème disparaît avec un thème “propre”, votre thème (ou ses overrides WooCommerce) est suspect. Si le problème disparaît en désactivant un lot d’extensions, vous venez de réduire la recherche à 3–5 problèmes potentiels au lieu de 30.
Corriger configuration boutique et passerelle de paiement (remettre les organes en coordination)
Une boutique WooCommerce peut “fonctionner” tout en étant mal configurée, comme un patient qui compense… jusqu’au jour où il ne compense plus. Ici, on vise les points qui cassent le checkout, les calculs, ou la création de commande.
- Réparer permaliens, pages boutique, endpoints (panier/commande/mon compte).
- Vérifier taxes, devises, arrondis, TVA (surtout si plugin TVA / B2B).
- Contrôler stock, variations, ruptures (les variations “invalides” bloquent souvent l’ajout panier).
- Tester paiement : mode sandbox, clés API, webhooks, redirections 3DS.
- Régler emails : SMTP, expéditeur, templates, conflits avec plugins d’email.
Exemple typique : “paiement accepté mais commande non créée”. Souvent, le paiement a bien eu lieu côté passerelle, mais le retour (webhook) échoue : URL de webhook filtrée, firewall trop strict, endpoint modifié, ou une erreur PHP empêche WooCommerce d’enregistrer la commande. Dans ce cas, la correction passe plus par les logs et la connectivité que par l’interface du module.
Stabiliser performance et sécurité (prévenir la rechute)
Une fois la cause traitée, on passe en “rééducation” : performance et sécurité. Parce que WooCommerce, c’est du business, et la stabilité n’est pas un luxe.
- Purger caches (plugin, serveur, CDN, cache objet) et nettoyer les transients inutiles.
- Optimiser base : sessions, tables WooCommerce, révisions, données expirées.
- Éliminer boucles SSL, redirections, mixed content (symptôme : checkout qui tourne en rond).
- Scanner malware, durcir comptes admin, vérifier utilisateurs suspects.
- Planifier mises à jour + rollback (sauvegarde vérifiée, staging, fenêtre de tir).
Ce point rejoint directement vos services de maintenance : mises à jour contrôlées, surveillance, et réaction rapide. En 2026, la meilleure stratégie reste simple : réduire la surface d’attaque, limiter les extensions “fantômes”, et garder un cycle de mise à jour propre.
Validation et résultats (le test d’effort)
On ne “déclare pas guéri” un WooCommerce parce que l’erreur a disparu une fois. On valide un parcours complet et on mesure ce qui compte.
- Parcours complet : panier → checkout → paiement → page merci.
- Contrôles : compte client, emails, stock, taxes, coupons, livraison.
- Mesures : temps de réponse, erreurs, étapes abandonnées, taux de conversion.
- Relecture : logs propres pendant un achat test.
- Documentation : correctifs appliqués + date + justification (pour éviter la récidive).
Matrice “symptôme → cause probable → solution rapide”
| Symptôme | Cause probable | Solution rapide (priorité) |
|---|---|---|
| Checkout qui boucle / recharge | Cache/minification JS, redirections SSL, conflit thème | Désactiver minification, vérifier HTTPS, tester thème neutre |
| Paiement OK mais commande absente | Webhook bloqué, erreur PHP à la création de commande | Lire logs WooCommerce/PHP, vérifier webhooks et firewall |
| Panier vide “tout seul” | Cache agressif, sessions, cookie domain, CDN | Exclure pages panier/checkout du cache, vérifier sessions |
| Emails de commande non reçus | Envoi serveur limité, SMTP absent, spam, action planifiée en échec | Configurer SMTP, vérifier actions planifiées, tester délivrabilité |
| Erreur critique après mise à jour | Incompatibilité extension/thème/PHP | Rollback, staging, désactivation ciblée, mise à jour compatible |
Snippet : mode maintenance “chirurgical” sans bloquer le checkout
But : afficher une page maintenance aux visiteurs, tout en laissant passer /cart, /checkout et /my-account (utile si vous devez corriger l’affichage sans stopper les ventes).
add_action('template_redirect', function () {
if ( current_user_can('manage_options') ) {
return; // admins OK
}
$uri = $_SERVER['REQUEST_URI'] ?? '';
$allowed = ['/cart', '/checkout', '/my-account', '/wc-api', '/wp-json'];
foreach ($allowed as $path) {
if ( stripos($uri, $path) !== false ) {
return; // on laisse passer les étapes clés + API
}
}
wp_safe_redirect( home_url('/maintenance/') );
exit;
}, 1);
Conseil : créez une page “/maintenance/” claire, courte, et rassurante (et testez sur mobile). C’est de l’UX autant que de la technique, surtout pour un site internet e-commerce.
FAQ support WooCommerce (cas réels, réponses nettes)
Pourquoi mon checkout WooCommerce tourne en boucle (délai : 30 minutes à 2 heures) ?
Les causes les plus fréquentes sont un cache/minify JavaScript trop agressif, une redirection HTTPS mal gérée, ou un conflit thème/extension. Commencez par exclure panier/checkout du cache, désactiver la minification, puis reproduire sur staging. Ensuite, lisez les logs WooCommerce et PHP : vous cherchez une erreur au moment du clic “Commander”.
Que faire si l’admin WordPress devient inaccessible (urgence : 15 à 45 minutes) ?
Passez par FTP/SFTP : renommez le dossier du plugin récemment mis à jour (ou “plugins” temporairement) pour reprendre la main. Activez ensuite les logs, identifiez l’erreur, puis réactivez par étapes. Si vous suspectez une compromission, traitez comme une infection : scan, mots de passe, comptes admin, et vérification des fichiers modifiés.
Pourquoi les emails de commande WooCommerce ne partent pas (coût : parfois 0 €, parfois un SMTP) ?
L’envoi PHP natif est souvent peu fiable. La solution la plus robuste est un envoi SMTP (ou service transactionnel) + vérification de la file d’actions planifiées. Vérifiez aussi que l’email n’est pas “envoyé mais non délivré” (spam, SPF/DKIM). C’est un sujet où un bon support fait gagner beaucoup de temps.
Quand contacter un spécialiste WooCommerce en forfait mensuel (et pourquoi) ?
Dès que l’erreur touche le paiement, la création de commande, ou la sécurité, parce que l’impact est direct sur votre chiffre. Un spécialiste vous apporte un protocole, de l’outillage, et un suivi : staging, monitoring, mises à jour maîtrisées, et plan de rollback. C’est généralement plus rentable que des interventions “au coup par coup”, surtout si vous avez plusieurs réalisations ou une boutique qui évolue en continu (nouveaux produits, règles, automatisations, développement sur mesure).
Si vous voulez, on fait le bilan ensemble : reproduction du bug, lecture des logs, puis plan de correction priorisé (le traitement le plus efficace, sans sur-dose de plugins ni bricolage).
Articles liés
-

Erreur paiement WooCommerce : protocole d’urgence pour rétablir vos encaissements
Une erreur de paiement, c’est une caisse qui se bloque en pleine affluence. Vous avez besoin d’un diagnostic clair, d’actions sûres, et d’un retour à la normale sans aggraver la situation. Ici, je vous guide…
-

Erreur mise à jour WordPress : diagnostic, solutions et prévention
Après une mise à jour WordPress, il n’est pas rare de voir surgir des erreurs qui transforment votre site web en véritable patient en détresse. Entre écran blanc, messages d’erreur cryptiques ou blocage total, le…
-

Erreur 500 WordPress : solutions pour une récupération immédiate
Votre site WordPress affiche soudainement une erreur 500 ? Pas de panique : ce symptôme, aussi impressionnant qu’un écran blanc en salle d’attente, est fréquent et peut souvent être traité rapidement. Dans ce guide, WP…


Comment corriger une erreur critique WooCommerce après mise à jour (sans casse) ?
Faites un rollback (sauvegarde/restauration) ou désactivez l’extension fautive via FTP si l’admin est inaccessible. Puis testez la compatibilité : PHP, WordPress, WooCommerce, thème, extensions. La stratégie la plus sûre : staging + mise à jour une par une + validation checkout. Côté “médecine préventive”, une routine de maintenance évite 80% des urgences.