Saltar al contenido Saltar a la barra lateral

Este hilo está resuelto. Aquí tienes una descripción del problema y la solución.

Problema:
Estás intentando actualizar productos en tu tienda online y te encuentras con un error fatal: PHP Fatal error: Uncaught Error: Array callback must have exactly two elements. Este error ocurre tanto en el sitio de producción como en el staging al guardar cambios en los productos.
Solución:
Si estás experimentando este problema, te recomendamos seguir estos pasos para identificar y resolver la causa:
1. Crea una copia de seguridad completa de tu sitio o establece un sitio staging.
2. Asegúrate de que todos los plugins y temas estén actualizados.
3. Limpia cualquier caché existente.
4. Desactiva todos los plugins, incluidos los de WPML.
5. Activa un tema por defecto de WordPress, como Twenty Twenty.
6. Activa el modo de depuración de WordPress siguiendo los pasos en esta guía: https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/
7. Reactiva los plugins de WPML, WooCommerce y WooCommerce Multilingual & Multicurrency.
8. Edita un producto para ver si el problema se resuelve.
9. Si el problema se resuelve, reactiva el tema y luego los demás plugins uno por uno hasta que el problema reaparezca, lo que te ayudará a identificar el plugin o configuración problemática.

Si el problema persiste o si la solución propuesta no es relevante debido a que está desactualizada o no se aplica a tu caso, te recomendamos abrir un nuevo ticket de soporte. También te sugerimos revisar los problemas conocidos en https://wpml.org/known-issues/, verificar la versión del arreglo permanente y confirmar que tienes instaladas las últimas versiones de los temas y plugins. Para más asistencia, visita nuestro foro de soporte en https://wpml.org/es/forums/forum/ayuda-en-espanol/.

Este es el foro de soporte técnico de WPML, el plugin multilingüe de WordPress.

Todas las personas pueden leerlo pero solo los clientes de WPML pueden ingresar comentarios. El equipo de WPML responde en los foros 6 días a la semana, 22 horas por día.

Etiquetado: 

Este tema contiene 7 respuestas, tiene 0 voices.

Última actualización por codection hace 2 meses, 1 semana.

Asistido por: Carlos Rojas.

Autor Publicaciones
julio 16, 2025 a las 11:10 am #17241518

David

Antecedentes del problema:
Estoy intentando actualizar los productos de la tienda online, pero al hacerlo, nos encontramos con un error fatal. El error que hemos visto es: PHP Fatal error: Uncaught Error: Array callback must have exactly two elements in /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Component/Post.php:69.

Síntomas:
Al actualizar los productos, aparece un error fatal relacionado con un 'Array callback' que debe tener exactamente dos elementos.

Preguntas:
¿Nos podrías ayudar con este error?

julio 16, 2025 a las 12:07 pm #17241900

Carlos Rojas
Partidario de WPML desde 03/2017

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Hola,
Muchas gracias por contactarnos

Por favor realice los siguientes pasos para aislar la causa del problema:
- Cree una copia de seguridad del sitio completo o cree un sitio staging (puede hacerlo de forma gratuita con WP Staging) con una copia del sitio en producción
- Actualice cualquier plugin o tema que pueda estar desactualizado
- Borre cualquier memoria cache que pueda existir
- Desactive todos los plugins, incluyendo los de WPML
- Active un tema por defecto de WordPress, por ejemplo: Twenty Twenty
- Active el modo de depuración de WordPress siguiendo los pasos descritos en esta guía: https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/
- Active los plugins de WPML, Woocommerce y Woocommerce Multilingual & Multicurrency
- Edite un producto y compruebe si el problema desapareció
- Si el problema desapareció, comience activando el tema y luego el resto de los plugins, uno por uno, hasta que el problema vuelva a aparecer y encuentre al culpable

Puede decirme el resultado de los pasos anteriores?

Saludos,
Carlos

julio 16, 2025 a las 3:53 pm #17243002

David

He hecho todos los pasos. En el staging que he creado no me ha dado ese problema.
Parece funcionar correctamente.
Lo unico que he hecho a parte de los pasos que me has indicado he borrado los plugin que no estaba utilizando. Pero eso no creo que afecte al problema que tenemos
¿que puedo hacer?

julio 16, 2025 a las 4:13 pm #17243027

David

te paso esto por si sirve:

[16-Jul-2025 10:43:58 UTC] PHP Fatal error: Uncaught Error: Array callback must have exactly two elements in /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Component/Post.php:69
Stack trace:
#0 /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Component/Post.php(50): WCML\Synchronization\Component\Post->managePostParent()
#1 /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Manager.php(165): WCML\Synchronization\Component\Post->run()
#2 /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Manager.php(117): WCML\Synchronization\Manager->runComponent()
#3 /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Manager.php(96): WCML\Synchronization\Manager->runProductComponents()
#4 /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Hooks.php(180): WCML\Synchronization\Manager->run()
#5 /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Hooks.php(142): WCML\Synchronization\Hooks->synchronizeProductTranslationsOnSaveInNativeEditor()
#6 /home/xtqwltsy/public_html/wp-includes/class-wp-hook.php(326): WCML\Synchronization\Hooks->synchronizeProductTranslationsOnSave()
#7 /home/xtqwltsy/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#8 /home/xtqwltsy/public_html/wp-includes/plugin.php(517): WP_Hook->do_action()
#9 /home/xtqwltsy/public_html/wp-includes/post.php(5110): do_action()
#10 /home/xtqwltsy/public_html/wp-includes/post.php(5212): wp_insert_post()
#11 /home/xtqwltsy/public_html/wp-admin/includes/post.php(453): wp_update_post()
#12 /home/xtqwltsy/public_html/wp-admin/post.php(227): edit_post()
#13 {main}
thrown in /home/xtqwltsy/public_html/wp-content/plugins/woocommerce-multilingual/classes/Synchronization/Component/Post.php on line 69

julio 17, 2025 a las 9:34 am #17244722

Carlos Rojas
Partidario de WPML desde 03/2017

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Muchas gracias por tu respuesta.

Si el problema desapareció en el sitio staging es posible que se trate de un problema puntual en la base de datos del sitio en producción.

Puedes restaurar el sitio staging en el sitio en producción y comprobar si el problema desapareció?

julio 17, 2025 a las 3:01 pm #17246879

David

no, acabo de comprobar que da el mismo fallo al guardar el mismo producto en el staging. Seguimos con el mismo problema
¿Que podemos hacer?

julio 18, 2025 a las 7:48 am #17248879

Carlos Rojas
Partidario de WPML desde 03/2017

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Buenos dias!

En tu último mensaje has mencionado que "da el mismo fallo al guardar el mismo producto en el staging". Con esto quieres decir que el problema solamente aparece en ése producto, o en algunos productos? O el problema aparece en todos los productos al momento de guardar los cambios?

julio 22, 2025 a las 10:34 pm #17261392

codection

Buenas, me hago cargo del hilo que David está ahora no disponible.

En efecto ocurre también en staging y el error solo ocurre en ese producto.