Statut WooCommerce et Actions planifiées : repérer les problèmes
Des commandes impayées qui s'accumulent, des connexions qui prennent du retard ou votre boutique qui se comporte bizarrement après une mise à jour ? Commencez alors par WooCommerce > Status. Vous y voyez comment votre serveur est configuré, quelles erreurs WooCommerce a enregistrées et quelles tâches s'exécutent ou échouent en arrière-plan. Cet article montre ce que vous y trouvez et comment transmettre le rapport système si vous demandez de l'aide.
Les onglets de WooCommerce > Status
| Onglet | Ce que vous y voyez |
|---|---|
| Statut système (System status) | Versions de WordPress, WooCommerce et PHP, la limite de mémoire, les paramètres PHP comme max_input_vars, si WP-Cron est activé, la base de données, les extensions actives et les modèles que votre thème remplace. |
| Outils (Tools) | Des boutons permettant par exemple d'effacer des données temporaires ou de recréer les pages de la boutique. Faites d'abord une sauvegarde. |
| Journaux (Logs) | Messages de WooCommerce et des extensions, comme votre plugin de paiement. Les erreurs graves apparaissent dans un journal nommé fatal-errors. |
| Actions programmées (Scheduled Actions) | La file d'attente des tâches en arrière-plan, par statut. |
Actions programmées et l'Action Scheduler
Une boutique effectue beaucoup de travail qui ne dépend pas d'un clic de visiteur : annuler les commandes impayées lorsque le délai de réservation de stock est dépassé, envoyer des e-mails et des webhooks, mettre à jour des rapports, nettoyer les anciennes données. WooCommerce utilise pour cela l'Action Scheduler, une file d'attente également utilisée par de nombreuses autres extensions, comme les abonnements et les connexions comptables.
| Statut | Signification et action à mener |
|---|---|
| En attente (Pending) | Doit encore s'exécuter. Si beaucoup d'actions portent une heure passée, la file d'attente prend du retard : vérifiez votre cron (ci-dessous). |
| En cours (In-progress) | S'exécute actuellement. Si une action reste bloquée longtemps, consultez le journal à côté. |
| Terminée (Complete) | Terminée. Par défaut, ces actions sont automatiquement nettoyées après un mois. |
| Échouée (Failed) | A renvoyé une erreur. Lisez le message dans la colonne Journal. |
| Annulée (Canceled) | Volontairement non exécutée ; généralement sans gravité. |
Pour les actions échouées, la colonne Groupe et le nom du hook indiquent généralement quelle extension les crée. C'est souvent une connexion devenue inaccessible, par exemple après un changement de mot de passe. Corrigez d'abord la cause, puis relancez les actions avec Exécuter maintenant (Run). Si la liste ne cesse de s'allonger, ne la videz pas simplement : cherchez plutôt quelle extension continue de planifier ou d'échouer.
WP-Cron et une véritable tâche cron
La file d'attente est traitée via WP-Cron. Par défaut, WordPress ne lance ses tâches programmées que lorsqu'un visiteur se présente. La nuit, il ne se passe donc pas grand-chose, et en cas d'affluence, ce travail se greffe sur la requête d'un client qui souhaite régler sa commande. Pour une boutique, une véritable tâche cron est donc préférable :
- Dans
wp-config.php, ajoutez la lignedefine('DISABLE_WP_CRON', true); - Dans DirectAdmin, sous Cron Taken, créez une tâche avec comme commande
/usr/local/bin/php /home/gebruikersnaam/domains/example.com/public_html/wp-cron.php. Remplacezgebruikersnaamet le domaine par les vôtres. - Ne faites pas s'exécuter la tâche plus souvent que ce que les règles relatives aux tâches cron autorisent. Dans le guide, nous recommandons de ne pas lancer une tâche plus d'une fois toutes les 10 minutes.
Toutes les étapes et règles figurent dans Cron Taken : faire exécuter des tâches automatiquement et Créer une tâche cron (et que faire si elle ne s'exécute pas). Vérifiez ensuite dans Actions programmées si le nombre d'actions en attente en retard diminue.
Rechercher les erreurs : les journaux
- WooCommerce > Status > Journaux : les fichiers journaux de WooCommerce et de vos extensions, comme votre plugin de paiement et
fatal-errors. - Le journal d'erreurs de votre site dans DirectAdmin : voir Aperçu du site et journaux : le journal des erreurs et le journal des accès.
Transmettre le rapport système au support
- Allez dans WooCommerce > Status et cliquez sur Get system report.
- Cliquez sur Copy for support et collez le rapport dans votre ticket, ou cliquez sur Download for support et joignez le fichier en pièce jointe.
- Indiquez également ce qui ne fonctionne pas, depuis quand, et ce que vous avez modifié vers cette période. Voir Demander de l'aide : quelles informations transmettre au support ?
Le support d'un plugin de paiement ou d'une autre extension demande souvent ce rapport en premier lieu. Ne transmettez jamais de mots de passe.
Pour aller plus loin
- Understanding the WooCommerce System Status Report (en anglais)
- Action Scheduler (en anglais)
- Cours WordPress gratuit, leçon 6.3 Images, PHP et autres gains de rapidité, sur WP-Cron
