wp_schedule_event non funziona?
Non riesco a far partire un cron job in WordPress. Sto provando a eseguire questo codice per verificare se riesco a ricevere un'email ogni ora.
È preso direttamente dagli esempi di WordPress qui: http://codex.wordpress.org/Function_Reference/wp_schedule_event. Tranne che ho rimosso gli underscore (vedi avvertenza nella documentazione).
Il codice è in esecuzione nel file functions.php del mio tema. Il cron sembra essere registrato ma la funzione prefixdothishourly
non viene eseguita (per quanto posso vedere).
add_action( 'wp', 'prefixsetupschedule' );
/**
* Su un hook d'azione precoce, verifica se l'hook è schedulato - se no, schedulalo.
*/
function prefixsetupschedule() {
if ( ! wp_next_scheduled( 'prefixhourlyevent' ) ) {
wp_schedule_event(time(), 'hourly', 'prefixhourlyevent');
}
}
add_action( 'prefixhourlyevent', 'prefixdothishourly' );
/**
* Sull'hook d'azione schedulato, esegui una funzione.
*/
function prefixdothishourly() {
return wp_mail("me@example.com", "Notification TEST", "TEST", null);
}
Il ALTERNATE_WP_CRON
effettua sostanzialmente un reindirizzamento trasparente quando un utente visita il tuo sito e potrebbe risultare in un parametro di query doing_wp_cron
aggiunto all'URL.
Se per qualsiasi motivo i tuoi cron job di WordPress falliscono a causa di un carico eccessivo o di un traffico troppo basso sul sito web, potrebbe essere una buona opzione passare a un cron job lato server/esterno per attivare il cron di WordPress al posto tuo.
