¿Tiene problemas con las acciones programadas que no funcionan en WordPress?
WordPress tiene un sistema de programación llamado wp-cron, pero a veces pierde una tarea programada, como publicar publicaciones programadas, enviar correos electrónicos activados, etc. Las tareas cron adecuadas realizadas por el sistema operativo de su servidor suelen ser más confiables.
En este artículo, le mostraremos cómo deshabilitar wp-cron en WordPress y cubriremos dos formas de configurar tareas cron adecuadas.
¿Por qué deshabilitar wp-cron?
Su sitio web de WordPress tiene un sistema de programación incorporado llamado wp-cron. Realiza tareas sensibles al tiempo como buscar actualizaciones, publicar publicaciones programadas, crear automáticamente copias de seguridad periódicas, enviar correos electrónicos activados, etc.
Puede obtener más información en nuestra guía sobre cómo ver y administrar trabajos cron de WordPress.
El problema es que WordPress solo solicita verificar las tareas programadas cuando alguien visita su sitio web. Esto funciona lo suficientemente bien para la mayoría de los sitios, pero a veces puede causar problemas para los más pequeños.
Por ejemplo, si su sitio tiene poco tráfico, es posible que sus publicaciones programadas no se publiquen a tiempo. Y si su sitio web recibe mucho tráfico, wp-cron se revisa regularmente, lo que puede afectar el rendimiento de su sitio web.
Ahora, si solo desea corregir el error de mensajes programados faltantes, puede usar el complemento gratuito Editor programado perdidopero si desea resolver todos los problemas de acción planificados, necesita un cronjob real.
Un verdadero trabajo cron lo realiza el sistema operativo de su servidor de alojamiento web, no WordPress. Puede configurarlo para verificar más tareas programadasconfiable. De forma predeterminada, WordPress no tiene acceso para configurar esto a nivel de servidor, pero puede hacerlo fácilmente siguiendo nuestro tutorial.
Dicho esto, veamos cómo deshabilitar wp-cron y configurar un trabajo cron adecuado. Esto es lo que cubriremos en este tutorial:
Deshabilitar wp-cron en WordPress
Para deshabilitar wp-cron, debe editar wp-config.php, que es un archivo de configuración esencial de WordPress. Se encuentra en la raíz de su sitio de WordPress y necesita usar un cliente FTP o el administrador de archivos en el panel de control de su alojamiento web.
Este archivo contiene mucha información confidencial y hacer los cambios incorrectos puede destruir su sitio de WordPress. Recomendamos hacer una copia de seguridad del archivo primero, por si acaso. Puede aprender esto siguiendo nuestra guía sobre cómo editar wp-config.php en WordPress.
Debe pegar el siguiente código en el archivo wp-config.php justo antes de la línea que dice ‘¡Eso es todo, deja de editar! Diviértete blogueando.’
define('DISABLE_WP_CRON', true);
Después de eso, debe guardar el archivo y volver a cargarlo en su sitio web.
WordPress ya no activará wp-cron cuando alguien visite su sitio web.
Configuración de un buen trabajo cron en su host de WordPress
Ahora necesita configurar un trabajo cron adecuado para ejecutar sus tareas programadas. La forma en que lo haga dependerá de las herramientas que le proporcione su proveedor de alojamiento de WordPress.
La forma más fácil de configurar trabajos cron es usar cPanel, un popular panel de control de sitios web que viene con muchos planes de alojamiento web, incluido Bluehost. Usaremos Bluehost cPanel en este tutorial.
Observación: Algunos servidores web no usan cPanel y es posible que algunos ni siquiera le permitan crear trabajos cron. En caso de duda, póngase en contacto con su proveedor de alojamiento o consulte su documentación de respaldo. Siempre puede usar un servicio cron de terceros (abajo).
Una vez que inicie sesión en su cuenta de alojamiento y navegue a cPanel, debe desplazarse hacia abajo hasta encontrar «Cron Jobs» y hacer clic en él.
Puede encontrarlo en la sección «Avanzado», pero puede variar según su proveedor de alojamiento.
Esto lo llevará a una nueva página donde puede crear nuevos trabajos cron.
No te preocupes por la advertencia, verás que necesitas un buen conocimiento de los comandos de Linux. Solo se necesita un comando y le mostraremos exactamente lo que es a continuación.
Si es necesario, puede cambiar la dirección de correo electrónico a la que se envían las notificaciones de trabajos cron. La dirección predeterminada es la que usó cuando se registró para su alojamiento web y funciona bien en la mayoría de los sitios web.
Ahora desplacémonos hacia abajo hasta la sección ‘Agregar nueva tarea cron’ y configuremos una tarea cron.
Primero debe decidir con qué frecuencia se ejecutará la tarea cron. Esto puede ser cualquier cosa, pero recomendamos un intervalo de 30 minutos.
Debe hacer clic en el botón ‘Configuración general’ y seleccionar un intervalo de tiempo de la lista desplegable. ‘Dos veces por hora’ es una buena opción para la mayoría de los sitios si no está seguro.
Ahora puede ingresar el comando que le indicará a WordPress que ejecute sus tareas programadas. Debe pegar el siguiente código en el campo ‘Comando’:
wget -q -O - https://example.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Asegúrese de reemplazar ‘example.com’ con la URL de su propio sitio web.
Una vez que haya hecho eso, asegúrese de hacer clic en el botón ‘Agregar nueva tarea cron’, y verá la nueva tarea cron agregada a la lista a continuación.
WordPress ahora busca y ejecuta tareas programadas cada 30 minutos en lugar de cuando alguien visita su sitio web.
Configuración de un trabajo cron adecuado utilizando un servicio de terceros
Si su plan de alojamiento no ofrece buenos trabajos cron, o si son difíciles de configurar, puede usar un servicio cron de terceros en su lugar.
Estos son servicios especiales que le permiten configurar tareas cron usando una interfaz simple. Aquí están algunos de los mejores:
Para este tutorial, usaremos EasyCron porque es fácil de usar y el plan gratuito es adecuado para la mayoría de los casos de uso por parte de principiantes.
Después de crear una cuenta gratuita, puede crear un nuevo trabajo cron haciendo clic en el botón ‘+ Trabajo cron’ a la izquierda.
Esto mostrará la pantalla ‘Crear trabajo cron’. Primero debe pegar la siguiente URL en el campo ‘URL para llamar’.
https://example.com/wp-cron.php?doing_wp_cron
Asegúrese de reemplazar «example.com» con la URL de su propio sitio.
Después de eso, debe elegir «Cada 30 minutos» en la lista desplegable «Cuándo ejecutar». Cuando haya terminado, no olvide hacer clic en el botón ‘Crear trabajo cron’ para guardar su configuración.
La nueva tarea cron se agregará a la lista y wp-cron se ejecutará en su sitio web cada 30 minutos.
Esperamos que este tutorial lo haya ayudado a aprender cómo deshabilitar wp-cron en WordPress y cómo configurar trabajos cron adecuados. También puede consultar nuestra guía paso a paso para SEO de WordPress, o consultar nuestra lista de errores comunes de WordPress y cómo solucionarlos.
Si te ha gustado este artículo, suscríbete a nuestro Canal de Youtube para tutoriales en vídeo de WordPress. También puedes encontrarnos en Gorjeo y Facebook†