You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Al utilizar el plugin de ePayco para WooCommerce, se produce un error fatal cuando se intenta acceder al listado de órdenes en WooCommerce (wp-admin/edit.php?post_type=shop_order). El error se debe al manejo incorrecto del parámetro label_count durante el registro de los estados personalizados de pedidos que realiza el plugin de ePayco.
El mensaje de error es el siguiente:
Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /wp-includes/l10n.php:684
Stack trace:
#0 /wp-admin/includes/class-wp-posts-list-table.php(383): translate_nooped_plural()
#1 /wp-admin/includes/class-wp-list-table.php(504): WP_Posts_List_Table->get_views()
#2 /wp-admin/edit.php(486): WP_List_Table->views()
#3 {main} thrown in /wp-includes/l10n.php on line 684
El problema está relacionado con el uso incorrecto de label_count durante el registro de estados de pedido personalizados. En lugar de utilizar un array adecuado para manejar los plurales, el plugin está pasando una cadena simple.
Pasos para reproducir:
Instalar y configurar el plugin de ePayco para WooCommerce.
Ir a la página de administración de WooCommerce > Órdenes (wp-admin/edit.php?post_type=shop_order).
Observar el error fatal.
Causa del problema:
El error se genera porque el registro de los estados personalizados de pedido en el plugin no usa correctamente la función de manejo de plurales. En el archivo donde se registran los estados de pedido, el campo label_count está definido incorrectamente como una cadena en lugar de un array que maneje singular y plural.
Código con error:
'label_count' => 'ePayco Pago Fallido <span class="count">(%s)</span>',
Solución propuesta:
Para resolver este problema, se debe modificar el registro de los estados de pedido para utilizar la función _n_noop(), que maneja adecuadamente los plurales.
Archivos afectados:
El archivo donde se registra el estado de pedido en el plugin de ePayco debería ser actualizado para corregir este comportamiento, probablemente en una de las siguientes rutas:
classes/class-wc-gateway-epayco.php o un archivo relacionado con el registro de estados de pedido en WooCommerce.
Pasos sugeridos para corregir:
En cada registro de estado de pedido personalizado donde se define label_count, reemplazar la cadena por una llamada a _n_noop() que maneje singular y plural.
Ejemplo de cómo deben corregirse los estados de pedido en el plugin:
Impacto:
Este error impide que los administradores de WooCommerce puedan acceder al listado de órdenes, lo que representa un problema crítico en la gestión diaria de las ventas. Este problema afecta a cualquier usuario que utilice el plugin ePayco para gestionar pagos en WooCommerce.
Notas adicionales:
La corrección se ha probado mediante un plugin MU (Must-Use) y ha resuelto el error. Esta solución debe ser incorporada en el plugin para que funcione correctamente sin necesidad de modificaciones adicionales.
Al utilizar el plugin de ePayco para WooCommerce, se produce un error fatal cuando se intenta acceder al listado de órdenes en WooCommerce (wp-admin/edit.php?post_type=shop_order). El error se debe al manejo incorrecto del parámetro label_count durante el registro de los estados personalizados de pedidos que realiza el plugin de ePayco.
El mensaje de error es el siguiente:
El problema está relacionado con el uso incorrecto de label_count durante el registro de estados de pedido personalizados. En lugar de utilizar un array adecuado para manejar los plurales, el plugin está pasando una cadena simple.
Pasos para reproducir:
Instalar y configurar el plugin de ePayco para WooCommerce.
Ir a la página de administración de WooCommerce > Órdenes (wp-admin/edit.php?post_type=shop_order).
Observar el error fatal.
Causa del problema:
El error se genera porque el registro de los estados personalizados de pedido en el plugin no usa correctamente la función de manejo de plurales. En el archivo donde se registran los estados de pedido, el campo label_count está definido incorrectamente como una cadena en lugar de un array que maneje singular y plural.
Código con error:
Solución propuesta:
Para resolver este problema, se debe modificar el registro de los estados de pedido para utilizar la función _n_noop(), que maneja adecuadamente los plurales.
Solución correcta:
'label_count' => _n_noop( 'ePayco Pago Fallido <span class="count">(%s)</span>', 'ePayco Pagos Fallidos <span class="count">(%s)</span>', 'epayco-woocommerce' ),
Archivos afectados:
El archivo donde se registra el estado de pedido en el plugin de ePayco debería ser actualizado para corregir este comportamiento, probablemente en una de las siguientes rutas:
classes/class-wc-gateway-epayco.php o un archivo relacionado con el registro de estados de pedido en WooCommerce.
Pasos sugeridos para corregir:
En cada registro de estado de pedido personalizado donde se define label_count, reemplazar la cadena por una llamada a _n_noop() que maneje singular y plural.
Ejemplo de cómo deben corregirse los estados de pedido en el plugin:
Impacto:
Este error impide que los administradores de WooCommerce puedan acceder al listado de órdenes, lo que representa un problema crítico en la gestión diaria de las ventas. Este problema afecta a cualquier usuario que utilice el plugin ePayco para gestionar pagos en WooCommerce.
Notas adicionales:
La corrección se ha probado mediante un plugin MU (Must-Use) y ha resuelto el error. Esta solución debe ser incorporada en el plugin para que funcione correctamente sin necesidad de modificaciones adicionales.
La corrección si alguien la necesita aqui:
https://github.com/carcagi/Plugin_ePayco_WooCommerce
The text was updated successfully, but these errors were encountered: