如何在WordPress中使用Cron Job
在使用Wordpress中想要使用CronJob去跑一些客製化的內容,目前有兩種做法,第一個是使用主機端原生的Crontab,自行定義時間、所需要做的事情,然而並不是所有主機商都有提供這項功能,不過我們還是可以透過Wordpress本身的CronJob完成我們想要做的事。
首先我們可以自行定義我們想要的頻率,主要是我們調用了$schedules這個變數,我們多加了week這個key值給它,裡面的interval則是以秒數為單位,他決定了多少秒之後會去執行一次這個schedule, display這邊則是顯示文字,我們後面會再談到。最後再將my_add_weekly這個函式加入cron_schedules(注意這邊是cron_schedules),這樣就完成客製化頻率的功能了。
而我們也可以一次定義多個頻率。
接下來我們要定義掛勾(hook),先將cron_schedule這個函式加到wp裡面,再來使用wp_schedule_event()這個函式來定義掛勾,這邊必填三個選項,time()、頻率及掛勾,第一個是讓你選擇使用UTC/GMT的時間戳,一般來說會直接使用time()這個函式,第二個是頻率,原生有hourly,twicedaily及daily三個可選,不過我們上面有教過可以自行定義了,就不用受這三個選項控制了,直接填上$schedule內想要的key值即可,第三個則是我們定義掛勾的地方,取完之後就要來定義我們想做什麼事情了。
這邊一樣是把cron_job_function加到cron_hook這個掛勾裡面,接下來在cron_job_function函式中就可以開始定義我們想要做的事情囉!
如果要檢查我們定義的頻率可以透過wp_get_schedules()這個函式,上圖是var_dump出來的模樣,這邊可以看到every_minute這個自定義的頻率
如果要看目前的Wordpress上的CronJob則是可以用 _get_cron_array()這個函式,上圖一樣可以看到cron_hook這個自訂的一個CronJob,以上就是這次Wordpress CronJob的教學。
更多電商營運相關內容,歡迎訂閱歐斯瑞電子報,以及追蹤我們的Facebook粉絲專頁!
延伸閱讀:
我的WordPress網站安全嗎—提升WordPress網站安全性的方法
我要留言