Su WordPress, i meccanismi legati alla pianificazione degli eventi (Cron Job) sono condizionati dal fatto che per poter funzionare regolarmente e come previsto, le pagine del sito vengano frequentate in modo sufficiente. Cosa che non è di molti siti web.
L'attivazione di un evento pianificato, su WordPress, è legata all'apertura di una pagina del sito. Se nessuno legge il sito, l'evento non viene attivato. Se la pagina viene aperta in ritardo, anche l'evento sarà avviato in ritardo.
Per quei casi in cui la puntualità dell'evento è un fattore importante, come nel caso dell'invio delle Fatture Elettroniche al Sistema di Interscambio, va trovato un modo per rendere certa e regolare la pianificazione. Va quindi aggiunto a quello di di WordPress un meccanismo più affidabile, legato al sistema operativo della macchina che ospita il sito.
La maggior parte degli hosting, o ancora meglio se si tratta di un VPS o di un server dedicato, consente di pianificare un evento.
È sufficiente impostare un evento Cron, ad esempio ogni 30 minuti, che richiami la riga di comando:GET https://nomesito.it/wp-cron.php?doing_wp_cron >/dev/null 2>&1
dove https://nomesito.it è la url del sito.
In questo modo verrà richiamata quella specifica pagina del sito che consentirà di avviare tutti i processi previsti in quel frattempo.
Un modo più specifico per gestire il lancio degli eventi pianificati, alternativo all'uso del comando GET, è di usare WP-Cli, il set di funzioni di WordPress da riga di comando. Nello specifico useremo il comando wp cron event: per lanciare tutti i processi previsti a quel momento (--due-now).wp cron event run --due-now --path=/var/www/nomesito.it > /dev/null 2>&1
dove /var/www/nomesito.it è la root directory del sito web.