¿Para qué funciona el archivo wp-cron.php?
El archivo wp-cron.php cumple con las siguientes funciones:
- Verificación de actualizaciones de plantillas y plugins instalados.
- Envíos de Pingbacks.
- Procesos de copias de seguridad.
- Publicar artículos en fechas específicas.
Se ejecuta cada que hay una visita a tu sitio e impacta directamente en el consumo de recursos tanto CPU, RAM como lectura/escritura de disco, si cuentas con un tráfico muy elevado y el sitio es de alta demanda es importante deshabilitar el mismo.
¿Cómo desactivo el fichero wp-cron.php?
El fichero se localiza en el root o raíz de nuestro sitio web, sin embargo, el archivo a modificar es el wp-config.php. Agregaremos la siguiente línea en el código del fichero ya mencionado:
define('DISABLE_WP_CRON', true);
Debe quedar similar a lo siguiente:
/** El nombre de tu base de datos de WordPress */
define('DB_NAME', 'nombre_basededatos');
/** Tu nombre de usuario de MySQL */
define('DB_USER', 'nombre_usuario');
/** Tu contraseña de MySQL */
define('DB_PASSWORD', 'contraseña');
/** Host de MySQL (es muy probable que no necesites cambiarlo) */
define('DB_HOST', 'localhost');
/** Codificación de caracteres para la base de datos. */
define('DB_CHARSET', 'utf8');
/** Cotejamiento de la base de datos. No lo modifiques si tienes dudas. */
define('DB_COLLATE', '');
/** Desactivar fichero wp-cron.php */
define('DISABLE_WP_CRON', true);
Por último debemos guardar los cambios.
Activar el Cron en cPanel
Para ello te invitamos a verificar el siguiente enlace, en donde podrás ver como habilitar un cron job desde cPanel.
El comando que agregaremos deberá ser como el siguiente:
/usr/bin/php /directorioraiz/nombreusuario/public_html/directorioweb/wp-cron.php > /dev/null 2>&1
Donde directorioraiz es el directorio raíz de nuestra cuenta (suele ser home o home2), nombreusuario es el nombre de la cuenta que tenemos asignada en nuestro hosting (el mismo con el que accedes a cPanel) y directorioweb es el directorio dentro de public_html donde se encuentra la web. En el caso de que nuestro WordPress se encuentre directamente en el directorio public_html quedaría de la siguiente manera:
/usr/bin/php /home/miusuario/public_html/wp-cron.php > /dev/null 2>&1
NOTA: Verificar si es un dominio adicional, ya que puede que la ruta de public_html cambie según la configuración del servidor.
Lo recomendable es ejecutar dicho cron cada hora o más para evitar sobrecargar el servidor.