No hay inconvenientes para ejecutar WP CRON utilizando los trabajos cron del servidor. De hecho, esta es la práctica recomendada.
Según el documento oficial de desarrollo de plugins de WordPress :
WP-Cron no se ejecuta continuamente, lo que puede ser un problema si hay tareas críticas que deben ejecutarse a tiempo. Hay una solución fácil para esto. Simplemente configure el programador de tareas de su sistema para que se ejecute en los intervalos que desee (o en el momento específico necesario).
Para hacer esto, primero debe deshabilitar el comportamiento cron predeterminado en wp-config.php
:
define('DISABLE_WP_CRON', true);
Luego, programe wp-cron.php
desde su servidor. Para Linux, eso significa:
crontab -e
Sin embargo, en lugar de ejecutarlo en la línea de comandos (CLI), ejecútelo como una solicitud HTTP. Para eso puedes usar wget
:
*/5 * * * * wget -q -O - https://your-domain.com/wp-cron.php?doing_wp_cron
WordPress carga todos los archivos principales necesarios, complementos, etc. wp-cron.php
con el siguiente CÓDIGO:
if ( !defined('ABSPATH') ) {
/** Set up WordPress environment */
require_once( dirname( __FILE__ ) . '/wp-load.php' );
}
Así que no se preocupe si WordPress no carga características importantes.
wget http://YOUR_SITE_URL/wp-cron.php
sin agregar?doing_wp_cron
¿Entonces, uno es mejor que el otro? ¿Qué hace la adición de?doing_wp_cron
que la no versión no lo hace?