麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網站 > CMS建站 > 正文

在WordPress中使用wp-cron插件來設置定時任務

2020-03-22 17:27:23
字體:
來源:轉載
供稿:網友
PHP 本身是無法創建定時任務的,但是 WordPress 自帶了一個偽定時任務(Cron) API,非常的方便好用,包括 WordPress 本身的定時發布文章都依賴于這個 APIWP Cron 是什么 是 WordPress 一套定時觸發機制, 可以循環安排任務執行. 如: 定時發布新文章, 定期檢測版本等功能都是通過這個來實現的.WP Cron 可以為我們實現什么 我們可以循環更新和提交網站數據, 節日定期向讀者發送賀卡或者表單 ...
它的原理就是將創建的定時任務存儲到數據庫里,當有人訪問的時候就去判斷一下是否到時間需要執行這個定時任務,如果到時間則執行。因為這種原理,所以執行的時間可能會有一些偏差,但隨著網站的瀏覽量攀升和網絡爬蟲的不斷訪問,會讓定時任務執行的時間越來越準確。WP-Cron 效率不高, 但還是很方便好用的, 整理了一下相關函數的使用方法如下.函數wp_get_schedule通過勾子別名, 獲取預定安排的勾子. 成功時返回循環周期類別 (hourly, twicedaily, daily, ...), 失敗時返回 false. php wp_get_schedule( $hook, $args ) $hook: 勾子別名
$args: 勾子對應函數的參數數組 (可選)wp_get_schedulesWordPress 默認支持的循環周期類別有 hourly, twicedaily 和 daily. 通過該函數我們可以獲取所有這些循環周期數組. php wp_get_schedules() 在默認情況下, 由以上方法獲得的數組對象如下.array( 'hourly' = array( 'interval' = 3600, 'display' = 'Once Hourly' 'twicedaily' = array( 'interval' = 43200, 'display' = 'Twice Daily' 'daily' = array( 'interval' = 86400, 'display' = 'Once Daily'我們可以向 cron_schedules 過濾器添加更多的類型. 添加例子如下:add_filter('cron_schedules', 'cron_add_weekly'); function cron_add_weekly( $schedules ) // Adds once weekly to the existing schedules. $schedules['weekly'] = array( 'interval' = 604800, // 1周 = 60秒 * 60分鐘 * 24小時 * 7天 'display' = __('Once Weekly') return $schedules;wp_next_scheduled通過勾子別名, 獲取預定安排的下一個運行時刻, 以整型返回. 常用于判斷是否已經做了預定安排. php $timestamp = wp_next_scheduled( $hook, $args ); $hook: 勾子別名
$args: 勾子對應函數的參數數組 (可選)wp_schedule_event按周期循環預定安排一個 WordPress 勾子, 在預定時間觸發勾子對應的函數. php wp_schedule_event($timestamp, $recurrence, $hook, $args); $timestamp: 時間 (整型)
$recurrence: 循環周期類別 (hourly, twicedaily, daily, ...)
$hook: 勾子別名
$args: 勾子對應函數的參數數組 (可選)wp_reschedule_event按周期循環重新預定安排一個 WordPress 勾子. 但我發現這個方法不能正常使用, Codex 寫得很草, 如果哪位清楚知道怎么使用, 請告知一下.wp_unschedule_event通過預定時間和勾子別名, 取消預定的安排. php wp_unschedule_event($timestamp, $hook, $args );
$timestamp: 時間 (整型)
$hook: 勾子別名
$args: 勾子對應函數的參數數組 (可選)wp_clear_scheduled_hook通過勾子別名, 移除預定安排的勾子. php wp_clear_scheduled_hook( $hook );
$hook: 勾子別名wp_schedule_single_event預定安排一個 WordPress 勾子, 在預定時間觸發勾子對應的函數. 與 wp_schedule_event 不同的是該方法的只安排一次觸發, 不存在循環預定. php wp_schedule_single_event($timestamp, $hook); $timestamp: 時間 (整型)
$args: 勾子對應函數的參數數組 (可選)從上面的函數可用的參數來看,我們就可以整理出以下幾個常用的參數:參數$timestamp(整數)(必須)第一次執行此定時任務的時間,需要傳一個時間戳,一般情況下都是當場執行,但不能用 time() 函數,而是用 WordPress 的時間函數 html' target='_blank'>current_time()。默認值:None$recurrence(字符串)(必須)執行頻率。每隔多長時間執行一次。可以填寫 hourly (每小時執行一次)、twicedaily (每天執行兩次,也就是 12 小時執行一次)和 daily (24 小時執行一次)。默認值:None$hook(字符串)(必須)執行的鉤子。在執行定時任務的時候會調用這個鉤子,往這個鉤子掛在函數即可實現定時執行函數。
默認值:None$args(數組)(可選)傳遞的參數,會被傳遞到掛載到定時鉤子的函數里的參數。默認值:None返回值(布爾 | null)如果添加成功則返回 null,不成功則返回 False例子if( !wp_next_scheduled( 'test' ) ) wp_schedule_event( current_time( 'timestamp' ), 'twicedaily', 'test' );首先使用 wp_next_scheduled() 函數判斷是否已經創建,如果沒創建則創建一個定時任務。把需要執行的代碼掛載到 test 鉤子上就行了。PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 黄色网址在线免费播放 | 免费看成年人视频在线 | 国产一有一级毛片视频 | 日本成人一区二区 | 午夜亚洲视频 | 久久艳片 | 免费观看黄色一级视频 | 国产精品视频一区二区三区四 | 欧洲色阁中文字幕 | 视频一区二区三区在线 | 久久久久一区二区三区四区五区 | 久久成人亚洲 | 国产在线色 | 一区二区三区欧美在线观看 | 国产精品一区在线免费观看 | 91精品中文字幕 | 日本中文高清 | 成人一区视频 | 色成人在线 | 欧美日韩经典在线 | 深夜影院一级毛片 | 日韩黄色免费在线观看 | 久久久久久久高清 | 深夜免费视频 | 国产免费人做人爱午夜视频 | 国产精品99久久免费观看 | 91网站永久免费看 | 国产精品美女一区二区 | 欧美1区2区在线观看 | 天天色综合2 | 久久精品亚洲一区 | 久久久久一区二区三区四区五区 | 亚洲一区二区三区精品在线观看 | 国产成人高清成人av片在线看 | 亚洲精华液久久含羞草 | 香蕉视频99 | 毛片视频免费观看 | h视频免费看 | 欧美亚洲国产成人 | 欧美a∨一区二区三区久久黄 | 人人看人人艹 |