Qué es WP-Cron
WP-Cron es el sistema que usa WordPress para ejecutar tareas programadas (publicar entradas futuras, hacer copias de seguridad, comprobar actualizaciones) sin que tengas que lanzarlas tú mismo a mano. También se conoce como «tareas programadas de WordPress».
Es como un empleado que, además de atender el día a día, va revisando una lista de tareas pendientes programadas para una hora concreta (regar las plantas a las nueve, sacar la basura los martes) y las va ejecutando cuando toca, sin que nadie tenga que recordárselo cada vez. WP-Cron se encarga de revisar, cada vez que alguien visita tu web, si hay alguna tarea programada pendiente de ejecutar en ese momento (publicar un artículo programado, generar una copia de seguridad, comprobar si hay actualizaciones disponibles) y, si la hay, la ejecuta en ese instante.
Cómo funciona
- Distintas partes de WordPress (el núcleo, los plugins) programan tareas para que se ejecuten en un momento futuro concreto.
- WP-Cron no funciona como un reloj siempre activo en segundo plano, sino que se comprueba cada vez que alguien visita tu web.
- En esa comprobación, revisa si hay alguna tarea programada cuya hora ya ha llegado o pasado.
- Si la hay, la ejecuta en ese momento, aprovechando la visita que acaba de ocurrir.
- En webs con muy poco tráfico, esto puede hacer que las tareas programadas se retrasen, porque dependen de que alguien visite la web para dispararse.
Ejemplo
Una academia de pintura y arte con cursos online en Écija tenía programada la publicación automática de artículos de blog a primera hora de la mañana, pero al tener poco tráfico en ese horario concreto, los artículos se quedaban «programados» durante horas hasta que llegaba la primera visita del día y disparaba WP-Cron. Configuramos un sistema que ejecuta las tareas programadas a intervalos fijos, sin depender de que haya visitas reales en ese momento, y los artículos empezaron a publicarse exactamente a la hora programada.
Señales de que te afecta
- Tus artículos programados se publican con retraso respecto a la hora configurada.
- Tu web tiene poco tráfico en ciertas franjas horarias, justo cuando tienes tareas programadas importantes.
- Tus copias de seguridad automáticas no se generan exactamente cuando deberían.
- Notas que WordPress tarda más de lo normal en algunas visitas, posiblemente porque coincide con la ejecución de varias tareas programadas a la vez.
Cómo lo resolvemos
Revisamos cómo está funcionando WP-Cron en tu web y, si hace falta, lo configuramos para que se ejecute a intervalos fijos de forma fiable, sin depender de que haya visitas reales en el momento exacto. Si quieres que revisemos esto en tu web, en nuestro servicio de optimización WordPress nos encargamos de ello. WP-Cron es responsable de tareas tan importantes como las copias de seguridad programadas, y conviene revisarlo junto con la Heartbeat API, otro sistema de comunicación constante de WordPress.
Preguntas frecuentes
¿WP-Cron es lo mismo que el cron del servidor?
No exactamente: el cron del servidor es un sistema independiente del propio servidor que ejecuta tareas a horas fijas sin depender de visitas, y de hecho se puede usar para disparar WP-Cron de forma más fiable, en lugar de depender solo del tráfico de la web.
¿Por qué mis tareas programadas no se ejecutan a tiempo?
Lo más habitual es que tu web tenga poco tráfico en el momento exacto en que debería ejecutarse la tarea, ya que WP-Cron depende de que alguien visite la web para comprobar y disparar las tareas pendientes.
¿Puedo ver qué tareas tiene programadas mi WordPress?
Sí, aunque no es visible desde el panel estándar de WordPress sin ayuda adicional; con ciertas herramientas se puede consultar qué tareas están programadas y cuándo está previsto que se ejecuten.