Come faccio a far eseguire un evento ogni giorno in WordPress?

8 mag 2012, 02:29:01
Visualizzazioni: 1.85K
Voti: 3

In un plugin che voglio creare, gestisce dei concorsi. Un concorso ha una data associata. WordPress ha una funzionalità integrata che permette di eseguire un pezzo di codice ogni giorno senza richiedere a qualcuno di creare un cron job? In pratica mi chiedo se, quando si crea un blog con WordPress, WordPress.org o Automattic effettuino automaticamente un ping al tuo sito una volta al giorno o qualcosa di simile. Perché se è vero, posso agganciarmi a quell'evento e fargli eseguire un controllo della data del concorso.

0
Tutte le risposte alla domanda 1
2

Dai un'occhiata a wp_cron e al filtro cron_schedules. Ci sono molti buoni tutorial disponibili come questo di WPTuts o questo di Viper007Bond.

8 mag 2012 02:34:23
Commenti

Ok, quindi fondamentalmente il cron integrato di WordPress (non quello che puoi configurare separatamente tramite un cron job) è una sorta di "cron speranzoso", nel senso che spera che qualcuno visiti il sito così che il cron possa essere eseguito. E non sembra che i siti vengano pingati giornalmente a meno che non configuri qualcosa (come un Google Alert) per farlo. Giusto? Voglio dire, non c'è nulla nel codice di WP che chieda ad Automattic o a WordPress.org di effettuare un ping una volta al giorno, vero?

Volomike Volomike
8 mag 2012 02:51:41

Hai ragione riguardo alla parte del cron "speranzoso", ma il grande vantaggio è che è più "agnostico rispetto al server" rispetto a un normale cron job. Ci sono plugin, come WP-Cron Control, che cercano di compensare questo, anche se non li ho mai usati.

mrwweb mrwweb
8 mag 2012 03:01:48