Salta al contingut
WooRescueHQ

WooCommerce / Errors

Errors de WooCommerce: PHP, JavaScript, base de dades i conflictes

Un missatge d’error és la pista més útil que dona una botiga trencada, si trobes el de veritat. El missatge que veuen els clients sol ser genèric; l’error precís, amb fitxer i línia, és en un registre.

Resposta curta

Troba primer l’error exacte. Els errors PHP són a WooCommerce → Estat → Registres (fatal-errors), al registre d’errors de PHP o a wp-content/debug.log. Els errors de JavaScript són a la consola del navegador. Llegeix la ruta del fitxer de l’error: et diu si la causa és un plugin, el tema, codi a mida o el mateix WooCommerce, i l’hora et diu quin canvi el va provocar.

Problemes concrets

Tipus d’error

PHP

Error fatal de PHP

«Hi ha hagut un error crític en aquest lloc web» i pantalles en blanc.

/ca/woocommerce/errors/error-fatal-php/
JavaScript

Errors de JavaScript

Botons que no funcionen, checkout que no fa res, carretó que no s’actualitza.

AJAX

Errors AJAX

Peticions a admin-ajax.php o ?wc-ajax= que fallen amb 400, 403 o 500.

Plugins

Conflictes de plugins

Dues extensions, o una extensió i codi a mida, competint pel mateix flux.

/ca/woocommerce/errors/conflicte-de-plugins/
Tema

Conflictes amb el tema

Plantilles sobreescrites desactualitzades, hooks eliminats, JavaScript del tema.

Base de dades

Errors de base de dades

Errors de connexió, taules que falten, bloquejos, consultes fallides.

API

Errors de la REST API

Respostes 401, 403 i 500 dels endpoints /wp-json/wc/.

/ca/woocommerce/integracions/rest-api/

Llegeix bé l’error

Un error fatal de PHP conté tot el que cal per començar: el tipus d’error, el missatge, el fitxer i la línia i, normalment, una traça. La ruta del fitxer et diu on: wp-content/plugins/<plugin>/…, el tema, un mu-plugin o WooCommerce. La traça et diu com s’hi ha arribat, sovint un hook de WooCommerce que crida codi a mida. L’hora et diu quan, i la pots relacionar amb una actualització, un canvi de versió de PHP o un desplegament.

Log
PHP Fatal error:  Uncaught TypeError: Unsupported operand types: string + float
  in /wp-content/plugins/custom-fees/custom-fees.php:142
Stack trace:
#0 /wp-includes/class-wp-hook.php(324): add_custom_fee(Object(WC_Cart))
#1 /wp-includes/plugin.php(205): WP_Hook->apply_filters(...)

En aquest exemple, el codi de la línia 142 d’un plugin a mida rep un text on espera un número, durant el càlcul dels càrrecs del carretó. Això apunta a un canvi recent en el que es passa a aquesta funció, no al mateix WooCommerce.

On es registra cada tipus d’error

Error On trobar-lo
Errors fatals de PHP WooCommerce → Estat → Registres (fatal-errors), registre d’errors PHP
Avisos i notices de PHP wp-content/debug.log amb WP_DEBUG_LOG activat
Errors de JavaScript Consola del navegador
Errors AJAX i de la REST API Pestanya de xarxa del navegador: codi d’estat i cos de la resposta
Errors de base de dades Registre d’errors PHP, debug.log, registre d’errors de MySQL al servidor

Preguntes freqüents

On són els registres d’errors de WooCommerce?

A WooCommerce → Estat → Registres. Els errors fatals es registren amb l’origen fatal-errors. Els errors PHP també van al registre d’errors PHP del servidor, i a wp-content/debug.log quan el registre de depuració de WordPress està actiu.

És segur activar WP_DEBUG en una botiga en producció?

Activa el registre, no la visualització: posa WP_DEBUG i WP_DEBUG_LOG a true i WP_DEBUG_DISPLAY a false, perquè els errors s’escriguin al registre i no es mostrin mai als clients. Desactiva-ho en acabar i mantén el registre fora de l’accés públic.

Com sé quin plugin causa un conflicte?

Comença per la ruta del fitxer de l’error i pel moment dels canvis recents. Si no hi ha error, reprodueix el problema en una còpia de staging i aïlla’l desactivant plugins per meitats allà, mai a producció en horari comercial.

$ descriu el problema

Tens un problema amb WooCommerce?Sol·licita una diagnosi.

Explica'ns què falla, què ha canviat darrerament i com afecta el negoci. Revisem cada sol·licitud i et recomanem el pas següent.

Sol·licitar una diagnosi Veure serveis i preus

No enviïs mai contrasenyes, claus d'API ni dades de targetes a través del formulari.

Diagnosi des de299 €

Sol·licitar una diagnosi