Solución de problemas del cron de WordPress cuando la sincronización de Jetpack se retrasa
Last updated:
Cuando la sincronización de Jetpack se retrasa, las funciones que dependen de ella, como Registro de actividad y Boletín, pueden mostrar información desactualizada o dejar de actualizarse. Esta guía te muestra cómo comprobar si el cron de WordPress está ejecutando los eventos de sincronización de Jetpack y qué debes enviar a nuestro equipo de soporte si la sincronización sigue retrasándose.
Cómo utiliza la sincronización de Jetpack el cron de WordPress
La sincronización de Jetpack mantiene una copia de los datos de tu sitio en WordPress.com. (Para ver qué datos se sincronizan, consulta ¿Qué datos sincroniza Jetpack?) Jetpack envía los datos de sincronización de dos maneras. Envía datos al final de las cargas de página realizadas por administradores del sitio que han iniciado sesión, y envía datos mediante el cron de WordPress (también llamado WP-Cron o eventos programados).
Jetpack programa dos eventos cron en tu sitio:
- jetpack_sync_cron envía los cambios recientes (sincronización incremental).
- jetpack_sync_full_cron envía una copia completa de los datos de tu sitio cuando hay una sincronización completa en curso.
Ambos eventos se ejecutan cada 5 minutos. Jetpack crea estos eventos automáticamente. Si falta uno, Jetpack lo vuelve a añadir la próxima vez que se cargue tu sitio.
El cron de WordPress solo se ejecuta cuando alguien carga una página de tu sitio, a menos que tu proveedor de alojamiento lo ejecute mediante una programación en el servidor. En los sitios con poco tráfico, o en los sitios donde el cron de WordPress está desactivado, los eventos de sincronización de Jetpack pueden ejecutarse tarde o no ejecutarse.
Comprueba el estado de sincronización de tu sitio
Si utilizas el plugin Jetpack, puedes ver el estado de sincronización en Salud del sitio. Los plugins independientes de Jetpack, como Jetpack VaultPress Backup o Jetpack Boost, no añaden esta información. Si solo utilizas un plugin independiente, pasa a la siguiente sección.
- En el panel de administración, ve a Herramientas → Salud del sitio.
- Haz clic en la pestaña Información.
- Expande la sección de Jetpack.
- Busca Tamaño de la cola de sincronización y Retraso de la cola de sincronización.
Tamaño de la cola de sincronización es el número de cambios que están esperando para enviarse a WordPress.com. Retraso de la cola de sincronización indica cuánto tiempo lleva en la cola el cambio más antiguo. Un retraso de unos minutos es normal. Un retraso de horas o días significa que la sincronización está atrasada.
Comprueba los eventos cron de Jetpack con WP Crontrol
WP Crontrol es un plugin gratuito que muestra todos los eventos cron programados en tu sitio.
- En el panel de administración, ve a Plugins → Añadir nuevo plugin.
- Busca WP Crontrol, después haz clic en Instalar ahora y Activar.
- Ve a Herramientas → Eventos cron.
- Busca
jetpack_sync.
WP Crontrol también puede ejecutar, editar y eliminar eventos cron de todos los plugins de tu sitio. Utilízalo únicamente para ver los eventos. No ejecutes, edites ni elimines ningún evento en esta pantalla, incluidos los de Jetpack. Eliminar los eventos de Jetpack no vacía la cola de sincronización, y Jetpack los vuelve a añadir la próxima vez que se cargue la página. Instalar WP Crontrol es el único paso de esta guía que cambia tu sitio. Todos los demás pasos solo muestran información. Cuando termines, puedes desactivar y eliminar WP Crontrol.
Deberías ver tanto jetpack_sync_cron como jetpack_sync_full_cron, ambos configurados para ejecutarse cada 5 minutos.
En un sitio con tráfico constante, o en un sitio donde tu proveedor de alojamiento ejecuta el cron mediante una programación en el servidor, la próxima ejecución de cada evento debería producirse en los 5 minutos siguientes. En un sitio con poco tráfico, los eventos pueden aparecer como atrasados hasta que alguien visite el sitio. Esto es normal. Vuelve a cargar la pantalla Eventos cron varias veces durante unos minutos. Si las próximas horas de ejecución siguen estando en el pasado, el cron de WordPress no se está ejecutando según lo programado.
Soluciona el problema del cron de WordPress que no se ejecuta
Ponte en contacto con tu proveedor de alojamiento para cada uno de estos casos. Puede comprobar y cambiar de forma segura la configuración de tu servidor.
- El cron de WordPress está desactivado en tu sitio. Puede que algunos proveedores de hosting desactiven el cron de WordPress (mediante el ajuste
DISABLE_WP_CRON) y, en su lugar, lo ejecuten según una programación del servidor. Pregunta a tu proveedor de hosting si hay una tarea cron del servidor que ejecutewp-cron.phpen tu sitio. Si no es así, pídeles que configuren una o que vuelvan a activar el cron de WordPress. - Tu sitio recibe muy poco tráfico. El cron de WordPress solo se ejecuta cuando alguien carga una página. Pide a tu proveedor que configure un trabajo cron del servidor que ejecute
wp-cron.phpcada 5 minutos. - Tu proveedor de alojamiento detiene las consultas largas a la base de datos. Algunos proveedores detienen automáticamente las consultas a la base de datos que superan un límite de tiempo establecido. Cuando esto ocurre con las consultas de Jetpack, Jetpack no puede leer su cola de sincronización y la sincronización puede quedarse atrasada aunque el cron se ejecute puntualmente. Pide a tu proveedor que compruebe en los registros de errores si hay consultas detenidas o terminadas que mencionen
jetpack-syncojetpack_sync_queue, y pregunta cómo permitir que esas consultas finalicen.
Envía los detalles del cron al soporte de Jetpack
Si los eventos cron de Jetpack se ejecutan puntualmente y la sincronización sigue atrasada, ponte en contacto con el soporte de Jetpack. Incluye:
- La URL de tu sitio.
- Los valores de Tamaño de la cola de sincronización y Retraso de la cola de sincronización de Herramientas → Salud del sitio → Información → Jetpack, si utilizas el plugin Jetpack.
- Una exportación de tus eventos cron. En WP Crontrol, ve a Herramientas → Eventos cron y haz clic en Exportar para descargar un archivo CSV.
- Cualquier línea de los registros de errores que haya encontrado tu proveedor y que mencione
jetpack-sync.
Nuestro equipo revisará tu sitio y decidirá cómo volver a poner en marcha la sincronización.