El cron de WordPress

Implementador WordPress y VPS
Implementador WordPress y VPS
El cron de WordPress
icon loader
/

Dentro de los VPS nosotros tenemos y podemos usar un cronjobs que se encarga de esas tareas repetitivas que se van a ejecutar automáticamente en nuestro servidor. Pero WordPress también tiene el suyo y en este episodio vamos a entender un poco mejor que es y para que esta.

El cron de WordPress
  • El WP-CRON o Cron de WordPress
  • Es un sistema integrado dentro del core
  • Que maneja la programación de tareas basadas en el tiempo
  • Por eso, al tratar de explicarlo se usa la metáfora de un reloj
  • De fabrica realiza cuatro tareas programadas
    • Comprueba si hay actualizaciones del core
    • Comprueba si hay actualizaciones de los plugins
    • Comprueba si hay actualizaciones de los themes
    • Publica post programados
  • Esta es la configuración original
  • Pero los plugins también pueden utilizar el WP-CRON
  • Y programar sus propias tareas adicionales basadas en el tiempo
    • Por ejemplo el plugin de backup
  • El WP-CRON trabaja por si mismo
  • No necesita software externo y extras del lado del VPS
  • Y al trabajar por si mismo usa también su mismo flujo:
    • El hook init verifica en la BD en busca de eventos programados
    • Si es hora del evento programado, genera una solicitud HTTP en el archivo wp-cron.php
    • wp-cron.php procesa el hook asociado con la tarea programada
  • WP-CRON funciona… Pero no es perfecto.
    • No almacena en caché
    • Ya que verifica eventos en cada carga
    • Y esto puede ser un problema en sitio de alto trafico
    • Por esto y para no cargar el VPS WordPress tiene un sistema de bloqueo
      • Que evita llamadas a wp-cron.php
      • Si no ha detectado nada programado en venir
      • Y evita peticiones hasta por 1 minuto
  • El WP-CRON se puede desactivar de forma muy sencilla
  • Basta con copiar la siguiente linea en el wp-config.php
define( 'DISABLE_WP_CRON', true );
  • Esta linea evitará que el WP-CRON
  • Verifique los eventos cron programados en cada carga de la web
  • Los plugins que usen WP-CRON seguirán funcionando
  • Otra forma de hacerlo…
  • Se puede combinar el WP-CRON con los cronjobs del VPS
  • Gracias a WP-CLI
  • Los cronjobs del VPS
    • Se ejecutan en segundo plano
    • Se ejecutan continuamente
    • Y usan el reloj del sistema para programar tareas
    • Esto es muy positivo porque los eventos programados nunca se pierden
  • Podrías desde tu VPS y WP-CLI programar las tareas del WP-CRON desde el servidor
    • Así se ejecutan aunque el sitio no tenga visitas
    • Y tenes la seguridad que se ejecutaran justo en el minuto que debe ser
  • Esto puede ser muy complejo
  • Podés usar herramientas como
    • Freshping
    • Uptime
  • Para enviar peticiones a tu WordPress
  • Mantener despierto el WP-CRON
  • Y de paso estar enterado si tu sitio se cae o dejar de estar accesible
  • Y si queres estar al tanto de lo que ejecuta y lo que no el WP-CRON
  • Podés usar el plugin: WP Control
    • que te permite ver y controlar lo que sucede con el WP-CRON desde tu escritorio de WP

El WP-CRON es muy importante para el buen funcionamiento de nuestra web. Es bueno que hablemos de él y hagamos un repaso a sus funciones de vez en cuando. Pero también es bueno que sepamos que también el VPS tiene su propio cron que podemos combinar con WP-CRON.

Si querés ponerte en contacto conmigo, podes escribirme en mi Formulario de contacto aquí en la web 😉

Deja un comentario