1. Inicio
  2. Base de Conocimientos
  3. WooCommerce Wholesale Order Form
  4. Cómo solucionar problemas del código corto del formulario de pedido mayorista

Cómo solucionar problemas del código corto del formulario de pedido mayorista

¿Obtienes un error crítico de PHP después de agregar el shortcode de WooCommerce Wholesale Order Form a una página, pero la página se carga bien una vez que lo eliminas? La causa casi siempre es una sintaxis incorrecta del shortcode, un límite de memoria de PHP bajo o un conflicto con otro plugin. Este artículo cubre los escenarios más comunes y te guía para aislar la causa exacta.

Antes de empezar: comprueba la sintaxis de tu shortcode

En la versión 3 de WooCommerce Wholesale Order Form, el formato correcto del shortcode es:

[wwof_product_listing id="XX"]

donde XX es el ID numérico de tu Formulario de Pedido. Un shortcode colocado sin el atributo id, o usando un ID incorrecto, producirá un mensaje de error o no mostrará nada en absoluto.

Para encontrar el shortcode correcto para tu formulario:

  1. Ve a Wholesale Suite → Order Forms en tu administrador de WordPress.
  2. Abre el formulario que deseas incrustar.
  3. Copia el shortcode que se muestra en el editor del formulario.
  4. Pégalo en la página donde deseas que aparezca el formulario.
Lista de Formularios de Pedidos en WP Admin mostrando el formulario de Listado de Pedidos Mayoristas, su shortcode, ubicación y estado Publicado
Editor del formulario de pedidos mostrando la configuración del formulario y el campo del shortcode wwof_product_listing

Si has estado usando [wwof_order_form] sin un atributo id, ese formato de shortcode ya no está en uso. Reemplázalo con el shortcode copiado del editor del formulario.

Problemas y soluciones comunes

La página muestra “No se especificó ID de formulario de pedido” o “Hay un error de configuración”

Los administradores que ven “No se especificó ID de formulario de pedido.” están usando el shortcode sin el atributo id requerido. Reemplaza el shortcode con el copiado de Wholesale Suite → Order Forms.

Los visitantes no administradores ven “Hay un error de configuración en este formulario. Por favor, contacta al administrador del sitio.” en su lugar. Este es el mismo problema subyacente. Corrige el shortcode y el mensaje desaparecerá para ambos.

Vista en frontend del mensaje de error de configuración de WWOF: "Hay un error de configuración en este formulario. Por favor, póngase en contacto con el administrador del sitio."

El formulario de pedido no se muestra en absoluto

El formulario de pedido solo se muestra cuando su estado es Publicado. Un formulario guardado como borrador no aparecerá en el frontend, incluso si el shortcode está colocado correctamente. Los visitantes y clientes que no han iniciado sesión verán en su lugar un mensaje de restricción de “Acceso Denegado” (“No tienes permiso para ver este formulario de pedido”), por lo que un formulario en borrador a menudo parece un problema de permisos en lugar de un formulario faltante.

  1. Ve a Wholesale Suite → Order Forms.
  2. Comprueba el estado del formulario. Si muestra Borrador, ábrelo y haz clic en Publicar.
Lista de Formularios de Pedidos de Wholesale Suite mostrando un formulario con estado Borrador junto a un formulario Publicado

Aparece un error crítico de PHP cuando el shortcode está en la página

Los errores críticos que solo aparecen cuando el shortcode está presente son causados por un conflicto de plugins, un plugin de caché u optimización que maneja mal el paquete de JavaScript del formulario de pedido, o un límite de memoria de PHP demasiado bajo. Sigue los pasos a continuación en orden.

Paso 1: habilita WP_DEBUG para ver el error real

  1. Abre el archivo wp-config.php de tu sitio (ubicado en el directorio raíz de WordPress).
  2. Busca la línea define( 'WP_DEBUG', false ); y cambia false por true.
  3. Justo debajo de esa línea, agrega: define( 'WP_DEBUG_LOG', true );
  4. Guarda el archivo y recarga la página que activa el error.
  5. Abre wp-content/debug.log.
  6. Tenga en cuenta el mensaje de error exacto y la ruta del archivo a la que apunta.

Nota: Tenga a mano este mensaje de error y la ruta del archivo. Los necesitará si se pone en contacto con el soporte.

Consulte Depuración en WordPress para obtener detalles completos sobre las constantes disponibles.

Paso 2: compruebe el límite de memoria de PHP

El formulario de pedido carga una aplicación JavaScript que realiza varias solicitudes en segundo plano a su servidor. Si PHP se queda sin memoria durante este proceso, puede producirse un error fatal. El mínimo recomendado para sitios de WooCommerce, incluidos los que ejecutan el Formulario de Pedido Mayorista, es de 256 MB.

Para comprobar su límite actual, vaya a WooCommerce → Estado → Estado del sistema y busque la fila Límite de memoria de PHP. Si es inferior a 256 MB, póngase en contacto con su proveedor de alojamiento para aumentarlo, o añada la siguiente línea a wp-config.php:

define( 'WP_MEMORY_LIMIT', '256M' );
Página de estado del sistema de WooCommerce que muestra las filas del límite de memoria de WordPress y PHP

Paso 3: cambie a un tema predeterminado

Un tema que añade JavaScript conflictivo o anula las plantillas de WooCommerce puede romper el formulario de pedido. Cambiar a un tema predeterminado lo descarta rápidamente.

  1. Vaya a Apariencia → Temas en el administrador de WordPress.
  2. Active Storefront o Twenty Twenty-Four.
  3. Recargue la página con el shortcode.

Si el error desaparece con el tema predeterminado activo, su tema original es la fuente del conflicto. Vuelva a activarlo y comparta el registro de depuración con el equipo de soporte de su tema.

Paso 4: aísle el plugin en conflicto

  1. Vaya a Plugins → Plugins instalados.
  2. Desactive todos los plugins excepto WooCommerce y WooCommerce Wholesale Order Form.
  3. Recargue la página con el shortcode. Si el error ha desaparecido, un conflicto de plugins es la causa.
  4. Vuelva a activar los plugins uno por uno, recargando la página después de cada uno. El último plugin que activó cuando reaparece el error es el que está en conflicto.
Lista de plugins instalados de WordPress que muestra los plugins activos, incluidos WooCommerce y WooCommerce Wholesale Order Form

Conflictos de plugins conocidos y soluciones

Varios plugins de optimización y caché requieren un manejo especial para funcionar junto con el formulario de pedido. El plugin incluye compatibilidad integrada para algunos de ellos, lo que significa que no se necesitan pasos manuales para ellos.

WP Rocket. El Formulario de Pedido Mayorista excluye automáticamente las páginas que contienen su shortcode de la caché de páginas de WP Rocket. No se necesita ninguna regla de exclusión manual.

SiteGround Optimizer. El plugin excluye automáticamente sus scripts de la combinación y minificación de JavaScript y CSS de SiteGround Optimizer. Si todavía está viendo problemas después de confirmar que este es el conflicto, desactive manualmente Combinar archivos JavaScript y Minimizar archivos JavaScript (y las opciones equivalentes de combinación y minimización de CSS) para la página que contiene el formulario de pedido.

Otros plugins de caché (WP Super Cache, W3 Total Cache, LiteSpeed Cache, etc.). Añada la URL de la página del formulario de pedido a la lista de exclusión de caché del plugin y desactive la minificación y combinación de JavaScript para esa página.

Constructores de páginas (Elementor, Divi, WPBakery). Si el shortcode se coloca dentro de un elemento de shortcode de un constructor de páginas y el formulario no se carga, intente colocarlo directamente en el editor de bloques de WordPress. Para Breakdance, la compatibilidad nativa con shortcodes está disponible a partir de la versión 3.1.0 de WooCommerce Wholesale Order Form.

Qué incluir al contactar con soporte

Si el error persiste después de seguir los pasos anteriores, el equipo de soporte de Wholesale Suite necesitará los siguientes detalles para investigar:

  • El mensaje de error exacto de wp-content/debug.log
  • Una lista de sus plugins activos en el momento del error
  • Su versión de PHP y el límite de memoria actual (visible en WooCommerce → Estado → Estado del sistema)
  • El nombre y la versión del tema activo
  • Cualquier cambio realizado en el sitio poco antes de que apareciera el error

Preguntas frecuentes

¿Cuál es el shortcode correcto para el Formulario de Pedidos Mayoristas?

El shortcode correcto en la versión 3 es [wwof_product_listing id="XX"], donde XX es el ID del Formulario de Pedidos. Cópielo directamente desde el editor del formulario en Wholesale Suite → Formularios de Pedidos.

¿Por qué el formulario de pedidos muestra "Hay un error de configuración en este formulario"?

Este mensaje aparece cuando falta el atributo id en el shortcode, o cuando el ID del Formulario de Pedidos especificado no existe. Compruebe que su shortcode incluye el id correcto copiado del editor del formulario.

¿Por qué no aparece mi formulario de pedidos aunque el shortcode es correcto?

La causa más común es que el formulario todavía está guardado como Borrador. Un formulario de pedidos solo se muestra en el frontend una vez que su estado es Publicado. Abra el formulario en Wholesale Suite → Formularios de Pedidos y haga clic en Publicar. Los visitantes que no hayan iniciado sesión también pueden ver un mensaje de "Acceso denegado" si el formulario está restringido a roles específicos.

¿Necesito configurar mi plugin de caché para que funcione con el formulario de pedidos?

Para WP Rocket y SiteGround Optimizer, no se necesita configuración manual. El plugin maneja la compatibilidad automáticamente. Para otros plugins de caché, agregue la página del formulario de pedidos a la lista de exclusión de caché y deshabilite la minificación de JavaScript para esa página.

¿Necesitas ayuda?

Si tienes alguna pregunta o encuentras algún problema, estamos aquí para ayudarte.

¿Te ha resultado útil este artículo?

Artículos relacionados

Completa tu Compra