Que es la REST API de WooCommerce y por que falla

La REST API de WordPress y WooCommerce es un sistema de comunicacion que permite que diferentes partes del sitio web y aplicaciones externas intercambien datos de forma estructurada. WooCommerce depende internamente de la REST API para muchas funciones criticas: actualizaciones del carrito en tiempo real, verificacion de variaciones de productos disponibles, actualizacion de precios y disponibilidad, y la comunicacion con plugins de terceros como pasarelas de pago y sistemas de gestion de pedidos.

Cuando la REST API de WooCommerce no funciona correctamente, los sintomas pueden incluir: el carrito no actualiza las cantidades, las variaciones de productos no cambian correctamente, los plugins de pago fallan, o aparecen mensajes de error en el panel de administracion como "The REST API encountered an error".

Diagnosticar el error de la REST API

Verificar el estado en WordPress

  1. Acceder al panel de administracion de WordPress.
  2. Ir a Herramientas > Salud del sitio > Informacion.
  3. Expandir la seccion REST API. Debe mostrar "No se detectaron problemas con REST API".
  4. Si muestra un error, el mensaje indicara la causa especifica.

Probar la REST API directamente

# Probar la REST API desde la terminal
curl -I https://tudominio.com/wp-json/

# Debe devolver HTTP 200 OK
# Si devuelve 404 o 403, hay un problema de configuracion

Causas comunes del error de REST API y soluciones

CausaSintomaSolucion
Permalinks no configurados o danadosRespuesta 404 en /wp-json/Guardar los permalinks en Ajustes > Enlaces Permanentes
Plugin de seguridad bloqueando la APIRespuesta 403 desde ciertos pluginsDesactivar plugins de seguridad uno por uno para identificar el culpable
Regla en .htaccess bloqueando /wp-json/Respuesta 403 o 404 en todas las URLs de la APIRevisar el .htaccess en busca de reglas que bloqueen wp-json
Cloudflare bloqueando la REST APISolo ocurre con Cloudflare activoAgregar una regla en Cloudflare para no bloquear /wp-json/*
La REST API esta desactivada en WordPressError especifico en Salud del sitioVerificar si algun plugin la deshabilita y eliminar ese filtro

Solucionar el error de REST API con permalinks

El problema mas comun con la REST API es que los permalinks no estan configurados correctamente. La solucion es simple:

  1. Acceder a Ajustes > Enlaces Permanentes en WordPress.
  2. Sin cambiar ninguna opcion, hacer clic en Guardar cambios.
  3. Esto regenera el archivo .htaccess con las reglas correctas de reescritura de URL.
  4. Probar nuevamente accediendo a https://tudominio.com/wp-json/.

Regla de .htaccess para la REST API

Si el archivo .htaccess tiene algun bloqueo personalizado para la URL wp-json, agregarlo a la lista de excepciones. Las reglas de WordPress en .htaccess deben incluir soporte para las URLs de la API:

# Verificar que las reglas de WordPress incluyen soporte a wp-json
# En el .htaccess, dentro del bloque WordPress:
RewriteRule ^wp-json/(.*)?$ %{ENV:HTTPS}index.php [NC,L]

# O simplemente regenerar el .htaccess desde Ajustes > Enlaces Permanentes
¿Fue útil la respuesta? 0 Los Usuarios han Encontrado Esto Útil (0 Votos)