¿Quiere deshabilitar wp-cron y reemplazarlo con su propio trabajo cron real ?

Reemplazar wp-cron con su propio trabajo cron puede ayudarlo a ejecutar las tareas programadas de su sitio de manera más confiable y también reducir la carga en su servidor para sitios de alto tráfico.

En esta publicación, explicaremos qué es wp-cron y por qué es posible que desee desactivarlo si no está familiarizado con esta táctica. Luego, le mostraremos paso a paso cómo deshabilitar wp-cron y reemplazarlo con un trabajo cron real.

Si ya está familiarizado con qué es wp-cron y por qué es posible que desee desactivarlo, puede hacer clic aquí para ir directamente al tutorial .

¿Qué es wp-cron?

Wp-cron es un archivo/función que es responsable de controlar las tareas urgentes de su sitio de WordPress.

Por ejemplo, supongamos que programó una publicación para el próximo miércoles a las 9:30 a. m. Wp-cron se asegura de que eso suceda a tiempo (o al menos lo más cerca posible de «a tiempo»; más sobre eso en un segundo).

Además de asegurarse de que las características principales de WordPress funcionen, muchos complementos de WordPress también confían en wp-cron para manejar partes del complemento sensibles al horario.

Si desea ver todas las tareas programadas en su sitio, puede usar un complemento gratuito como WP-Crontrol . Si vas a Herramientas → Cron Events , puedes ver todas las tareas automáticas que WordPress ha programado para ejecutarse y con qué frecuencia se ejecutan:

El complemento WP-Crontol le permite ver las tareas antes de desactivar wp-cron

Como sugiere el nombre, wp-cron proviene del sistema de programación cron más general que utilizan los sistemas operativos Unix. Sin embargo, wp-cron es distinto de esos sistemas de programación y wp-cron no es un trabajo cron real.

La gran diferencia es que wp-cron solo se ejecuta cuando usted u otra persona visitan su sitio web (ya sea en el front-end o en su tablero). Cada vez que alguien visite su sitio, WordPress ejecutará el archivo wp-cron.php y verificará las tareas programadas. Si hay una tarea, la ejecutará.

Sin embargo, esto puede suponer un problema para los sitios con poco tráfico porque wp-cron solo se ejecuta cuando hay una visita. Por ejemplo, supongamos que programó esa publicación para el miércoles a las 9:30 a. m., pero su sitio no recibe visitas a esa hora. De hecho, su sitio no recibe su próxima visita hasta las 11:30 AM.

Bueno, en ese escenario, su publicación no se publicaría hasta las 11:30 a.m. porque wp-cron no pudo ejecutarse cuando no hubo visitas. Todavía mostraría la marca de tiempo como 9:30 a. m., pero en realidad no aparecería en su sitio hasta las 11:30 a. m.

¿Por qué debería deshabilitar wp-cron?

Hay dos razones para deshabilitar wp-cron y reemplazarlo con su propio trabajo cron dedicado:

  1. Confiabilidad : como se ilustra en el ejemplo anterior, wp-cron no siempre es confiable en sitios con poco tráfico porque necesita una visita al sitio web para ejecutarse. Con un trabajo cron real, puede configurar sus tareas para que se ejecuten cada X minutos sin importar qué , incluso si no hay visitas.
  2. Rendimiento : en sitios de alto tráfico , a algunas personas no les gusta wp-cron porque WordPress ejecutará el archivo wp-cron.php en casi todas las visitas. WordPress intenta limitar esto al no ejecutarlo más de una vez cada 60 segundos, pero aún puede haber problemas de rendimiento por varias razones técnicas, como visitas simultáneas que activan wp-cron .

En pocas palabras, aprender a deshabilitar wp-cron puede ser útil tanto para sitios de poco tráfico como para sitios de alto tráfico, aunque por diferentes razones.

Cómo deshabilitar wp-cron (y configurar un trabajo cron real)

Ahora que sabe el «qué» y el «por qué», pasemos al «cómo». Le mostraremos cómo deshabilitar wp-cron y luego reemplazarlo con su propio trabajo cron del servidor ( u otra solución ).

Hay dos partes en el proceso:

  1. Debe deshabilitar la función wp-cron incorporada para que WordPress no ejecute wp-cron.php en cada visita. Para hacer esto, solo necesita agregar una línea de código al archivo wp-config.php de su sitio.
  2. Debe configurar su propio trabajo cron para llamar a wp-cron.php en el horario que establezca. Con esto, puede ejecutar wp-cron.php en un horario específico, ya sea que su sitio reciba tráfico o no.

Deshabilitar wp-cron en WordPress

Para deshabilitar wp-cron, debe agregar una línea de código al archivo wp-config.php de su sitio . Debido a que este es un archivo de configuración clave, le recomendamos que haga una copia de seguridad de su sitio antes de realizar cambios (o al menos haga una copia del archivo wp-config.php original para que pueda volver a cargar la copia de trabajo si algo sale mal). ) .

Para acceder al archivo wp-config.php, puede:

  • Conéctese a su servidor a través de FTP y busque el archivo en el directorio raíz (el mismo directorio que contiene las carpetas wp-admin y wp-content).
  • Use algo como cPanel File Manager para explorar los archivos de su servidor desde su navegador web.

Una vez que tenga una copia de seguridad de su sitio y/o el archivo wp-config.php original , agregue el siguiente fragmento de código arriba de la línea que dice/* That's all, stop editing! Happy publishing. */

define('DISABLE_WP_CRON', true);

Al igual que:

Cómo deshabilitar wp-cron en WordPress

Guarde los cambios y vuelva a cargar el archivo si es necesario.

Una vez que haya hecho esto, WordPress ya no llamará al archivo wp-cron.php cuando las personas visiten su sitio web.

Configura tu propio trabajo cron

Cuando haya deshabilitado wp-cron, debe configurar su propio trabajo cron para que las tareas automáticas de su sitio aún se ejecuten.

Hay dos formas de hacerlo:

  1. Puede crear su propio trabajo cron a nivel de servidor utilizando su alojamiento . El proceso exacto varía según el proveedor de alojamiento .
  2. Puede usar un servicio cron en línea, que son herramientas basadas en la nube que le permiten ejecutar el trabajo cron usando los servidores del servicio. Por lo general, estos servicios tienen planes gratuitos limitados, por lo que es posible que deba pagar. Afortunadamente, incluso los servicios pagos son bastante asequibles ( por ejemplo, $12 por año ).

Le mostraré cómo configurar ambos, pero solo necesita usar uno de estos métodos.

Configure un trabajo cron del servidor a través de su alojamiento

El proceso de configuración de un trabajo cron del servidor varía según su host. Algunos lo hacen muy fácil, mientras que otros no.

Usaré cPanel para este ejemplo porque es la solución más popular, pero recomiendo consultar los documentos de soporte de su host si su host no usa cPanel o si no está seguro de dónde encontrar esta función ( o si su host incluso lo permite ).

Para comenzar, inicie sesión en su tablero de alojamiento y vaya a cPanel. En la interfaz de cPanel, debe encontrar una herramienta llamada Cron Jobs (o algo similar). Por lo general, se encuentra en la categoría Avanzado , pero puede ser diferente según su host.

Seleccione esa herramienta:

La herramienta cron de cPanel

En la página siguiente, busque la sección Agregar nuevo trabajo cron . Debería ver opciones para especificar el tiempo, así como un comando .

El tiempo depende de usted, pero normalmente ejecutarlo cada 30 minutos es un buen punto de partida, especialmente en alojamiento compartido. De hecho, algunos hosts compartidos no le permitirán ejecutarlos con más frecuencia .

Puede elegir Dos veces por hora en el menú desplegable Configuración común , que preconfigurará el resto de la configuración de tiempo. O bien, puede usar Crontab.guru para generar la sintaxis usted mismo; solo necesitaría ingresar los detalles en los cuadros correspondientes.

Luego, agregue la siguiente línea de código al cuadro Comando :

wget -q -O - https://yoursite.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Asegúrese de reemplazar https://yoursite.comcon la URL real de su sitio web .

Por ejemplo, si su sitio web es https://basketballfanatic.com, entonces el comando adecuado sería:

wget -q -O - https://basketballfanatic.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Crear un nuevo trabajo cron en cPanel

Asegúrese de hacer clic en el botón Agregar nuevo trabajo cron para guardar su trabajo cron. Luego, debería verlo aparecer en la lista de trabajos cron actuales a continuación.

Utilice un servicio cron en línea

Si su host no le permite configurar trabajos cron o si simplemente prefiere una experiencia más simple, es posible que desee utilizar un servicio cron dedicado en su lugar.

Hay varias opciones populares aquí, incluidas las siguientes:

Usaremos EasyCron para este tutorial.

EasyCron es gratuito para hasta 200 llamadas cron diarias en un intervalo máximo de 20 minutos ( lo que le permite ejecutar una sola tarea cada 20 minutos todos los días ), lo que debería ser suficiente para un solo sitio de WordPress. Los planes pagos también son bastante asequibles, desde solo $ 12 por año .

Para comenzar, regístrese para obtener una cuenta gratuita .

Luego, haga clic en el botón + Cron Job en la interfaz de EasyCron:

Cree un nuevo trabajo cron después de deshabilitar wp-cron

Luego verá una ventana emergente donde puede configurar su trabajo cron.

En el campo URL para llamar , ingrese https://yoursite.com/wp-cron.php?doing_wp_cron, asegurándose de reemplazarlo https://yoursite.comcon la URL real de su sitio web.

Luego, en Cuándo ejecutar , elija Cada 30 minutos ( puede elegir más a menudo si es necesario, pero 30 minutos es un buen punto de partida para la mayoría de los sitios web ).

Luego, haga clic en Crear trabajo cron para guardar su configuración y hacer que su trabajo cron esté activo:

Cómo agregar un trabajo cron con EasyCron

¡Hecho!

Ve arriba

Deshabilite wp-cron hoy para una programación de tareas más confiable

Wp-cron es el sistema de programación de WordPress incorporado que garantiza que las diversas tareas de su sitio se ejecuten a tiempo, como las publicaciones de blog programadas .

Sin embargo, la función integrada tiene algunos inconvenientes en lo que respecta a la confiabilidad ( para sitios con poco tráfico ) y el rendimiento ( para sitios con mucho tráfico ). Por esos motivos, es posible que desee deshabilitar wp-cron y reemplazarlo con un verdadero trabajo cron, que es lo que le mostramos en esta publicación.

Para conocer otras formas de mejorar el rendimiento de su sitio, consulte nuestra guía completa para mejorar el rendimiento de WordPress .

¿Todavía tiene alguna pregunta sobre cómo deshabilitar wp-cron y reemplazarlo con un trabajo cron real? ¡Cuéntanos en los comentarios!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Nuestra web usa cookies para mejorar tu experiencia.