Hola, equipo:
Llevo varios meses lidiando con un problema que me trae de cabeza.
He intentado de todo: desactivar plugins, cambiar configuraciones… realmente he probado muchas cosas, pero no doy con la solución.
El problema es el siguiente: algunos clientes nos informan de que, al intentar finalizar la compra, la página hace scroll hacia arriba sin mostrar ningún mensaje. Otros comentan que la página se queda bloqueada sin hacer nada. Y últimamente, varios nos han reportado que aparece un error crítico en el sitio web.
He investigado todo lo que he podido. Incluso he llamado personalmente a algunos de los clientes que han experimentado el problema para preguntarles qué navegador y dispositivo estaban utilizando, con la esperanza de encontrar algún patrón común.
Lo curioso es que muchos pedidos se completan sin problema, pero hay otros casos en los que simplemente no hay manera.
¿Podríais echarle un vistazo con el inspector de Chrome? Yo, sinceramente, no he conseguido encontrar el origen del fallo.
Agradecería mucho vuestra ayuda.
¡Gracias!
Adjunto captura
Contenido solo visible a usuarios registrados
Hola Tomas,
Lo que describes podría estar relacionado con varios factores como errores JavaScript, conflictos entre plugins o problemas con el proceso de validación del checkout. Para poder ayudarte de forma más precisa, vamos a hacer una revisión desde el inspector de Chrome como sugieres, pero también necesitamos recopilar algunos datos:
Algunos plugins de cache como es el caso de wp rocket pueden llegar a minificar o retrasan scripts que el checkout necesita ejecutar correctamente. Tambien nos ayudaría saber si está activado el modo de depuración en WordPress (WP_DEBUG), esto podría darnos pistas si se está generando un error crítico.
Luego nos comentas algún producto o enlace específico donde hayas detectado más casos de fallo? tambien nos puedes indicar si has modificado el checkout de alguna forma? ya sea con plugins como Checkout Field Editor o algún código personalizado.
Es posible que no seamos del grupo al que le da el error ya que hemos llegado sin problemas al checkout:
Algo que podemos evidenciar es que tienes el checkout nuevo de WooCommerce, has verificado si con el viejo esto sigue pasando? por ejemplo puedes ir a tu checkout y en lugar de los elementos que ya estan, agregar el siguiente shortcode:
[woocommerce_checkout]
Puedes probar un tiempo tener este para verificar si el problema viene de alli, tambien es bueno que ingreses el checkout fuera de los planes de accion de tu Wp rocket, para ello prueba ingresar en Ajustes > WP Rocket > Reglas avanzadas, y agregas esto:
/checkout/
Que es el nombre que tiene tu finalizar compra, también vas a Ajustes > Optimización de archivos, aquí verifica si tienes desmarcada la opcion de “Retrasar la ejecución de JavaScript” para la URL /checkout/ y de ser necesario incluye también estas:
woocommerce, wc-cart, wc-checkout, jquery
Por probar, verifica y nos comentas.
Un saludo 🖐️
@argenis gracias por la pronta respuesta.
En la propia página de finalizar compra en modo edición se pueden anular todos los ajustes de WP Rocket. Es decir, no hay ningún tipo de control de caché sobre las páginas de mi cuenta, carrito y finalizar compra, incluido retrasos JS etc...
Tengo activo el Mode Debug.
Los clientes llegan perfectamente al checkout, nadie me ha reportado lo contrario. No tengo ningún tipo de personalización, pero está el plugin Vat number con un fragmento de código para que solo aparezca cuando el país no es España, no tiene sentido que se vea en España.
Y otro plugin que es el del dni, pero más de esto creo que no hay nada más.
Como dije es solo ocasional cuando un cliente nos reporta que tras completar todos los campos, aceptar los términos...., le da al botón de finalizar compra y o bien no hace nada o la página hace scroll hacia arriba como si quisiera motras un mensaje de advertencia pero no sale nada. Por ejemplo, el tiempo mensaje: ya existe una cuenta asociada a ese email....
Hola Tomas,
Lo que te comento del checkout viejo de WooCommerce ya lo has probado? de todo lo que te indique es lo único que no me has dado una contestación, entiendo que es por que eso en específico no lo has realizado.
Al ser un problema esporádico y al no replicarlo nosotros no tenemos mucho que podamos hacer de este lado, tendrías que validar como te indico realizando esos ajustes o probando desactivar algunos plugins que actúan en la carga diferida, retrasos de javascript, etc.
Un saludo 🖐️
@argenis lo siento, es verdad, no te respondí a esto. No, no lo he probado y para hacerlo tendría que hacer varias modificaciones...
Tampoco me avisa la página de ninguna incompatibilidad de plugin, sabes que WordPress avisa de ello.
Hola Tomas,
WordPress hace un aviso cuando la incompatibilidad resulta en un error crítico, no cuando la incompatibilidad resulta en el fallo de algunas funciones, verifica lo que te indico del checkout viejo de WooCommerce y ya seria probarlo en otro entorno como te indico con algunos plugins desactivados, haciendo pruebas quizás con las personas que les genera error en primera instancia.
Un saludo 🖐️
@argenis Buenos días, obtengo el mismo error con el bloque.
Tengo activo el modo de depuración en WordPress (WP_DEBUG), podéis revisar o tengo que adjuntar el archivo aquí, si es que se puede...
Hola Tomás.
Este mensaje es un "PHP Notice" de WordPress que indica un uso incorrecto de la función _load_textdomain_just_in_time(). No es un error fatal, pero sí una advertencia que sugiere una mala práctica en el código de un plugin o tema.
El aviso indica que el dominio de traducción rp-product-deliverydate se está cargando demasiado pronto, antes de que WordPress esté listo para manejar traducciones lo que indica que algún código (probablemente del plugin "RP Product Delivery Date" ) está intentando cargar traducciones antes de la acción init de WordPress. Las traducciones deberían cargarse dentro de un hook como init, plugins_loaded, o uno posterior, no directamente cuando se declara el archivo PHP.
Es un aviso que tendrían que corregir los desarrolladores del plugin pero no le veo ninguna relación con el error que indicas en esta entrada, esto no tendría que afectar a la finalización de compra, de todas formas puedes probar a desactivarlo y revisar como se comporta la web.
Un Saludo
Muchas gracias, ya he pasado el aviso al desarrollador del plugin, ha reconocido la advertencia y en próximas actualizaciones lo va a resolver.
Gracias por el apoyo.
Hola Tomás,
Gracias a ti, es un placer para nosotros poder ayudarte, esperamos el desarrollador solvente el problema de su plugin.
No dudes en escribirnos si tienes cualquier otra consulta.
Un saludo