您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程

WordPress的Cron定时任务设置方法

梁尉寒2025-03-17WordPress教程已有15人查阅

导读最近我使用 WordPress Cron 定时任务相关功能实现每日一更新的博客订阅数量更新。WP Cron 是什么? 是 WordPress 一套定时触发机制, 可以循环安排任务执行. 如: 定时发布新文章, 定期检测版本等功能都是通过这个来实现的。

最近我使用 WordPress Cron 定时任务相关功能实现每日一更新的博客订阅数量更新。
WP Cron 是什么? 是 WordPress 一套定时触发机制, 可以循环安排任务执行. 如: 定时发布新文章, 定期检测版本等功能都是通过这个来实现的。
WP Cron 可以为我们实现什么? 我们可以循环更新和提交网站数据, 节日定期向读者发送贺卡或者表单, ...
WordPress 定时任务方法列表可以参考: WP-Cron Functions
WP-Cron 效率不高, 但还是很方便好用的, 整理了一下相关函数的使用方法如下. wp_get_schedule
通过勾子别名, 获取预定安排的勾子. 成功时返回循环周期类别 (hourly, twicedaily, daily, ...), 失败时返回 false.
<?php wp_get_schedule( $hook, $args ) ?>
$hook: 勾子别名
$args: 勾子对应函数的参数数组 (可选) wp_get_schedules
WordPress 默认支持的循环周期类别有 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: 勾子对应函数的参数数组 (可选) 查看 WordPress 定时任务列表
因为是定时任务, 不能立即生效, 那我们要如何查看这些任务安排呢? 可以装个插件进行辅助. 我建议使用比较轻量级的 WP-Cron Dashboard (与 Quick Comments 同一个作者), 安装后可以在 Tool -> WP-Cron 打开控制面板.

本文标签:

很赞哦! (1)

暂无内容
暂无内容

相关源码

  • pbootcms模板(自适应手机版)红色响应式单位机构类网站自适应响应式单位机构网站模板 | PbootCMS内核开发为机构组织设计的响应式网站模板,采用PbootCMS内核开发,支持一键替换行业内容,满足多元化场景需求。查看源码
  • 快递物流公司pbootcms网站模板html响应式自适应源码下载基于HTML5+CSS3前沿技术开发,实现PC、平板、手机多端完美自适应。采用弹性布局与媒体查询技术,确保不同设备均有流畅视觉体验,企业形象统一。查看源码
  • (PC+WAP)生活资讯百科新闻门户类pbootcms网站模板为生活资讯、百科门户类企业打造的高性能网站模板,基于PbootCMS开源内核开发,采用HTML5响应式架构,PC与手机端实时数据同步,覆盖全终端用户浏览场景。查看源码
  • pbootcms模板(PC+WAP)APP应用软件下载类官网源码为APP应用软件官网打造的响应式解决方案,PC端与移动端(WAP)数据实时同步,一次更新全网生效,满足多终端用户无缝体验需求。查看源码
  • (PC+WAP)绿色产品环保设备垃圾桶厂家公司网站pbootcms模板为垃圾桶生产商、环保设备企业打造的高端响应式门户模板,基于PbootCMS开源内核深度开发。采用HTML5自适应架构,无缝实现PC与手机端数据实时同步与交互优化查看源码
  • 深蓝色风景摄影机构网站(自适应多端)pbootcms模板该模板基于PbootCMS内核开发,专为风景摄影机构、户外摄影企业设计,采用深蓝色主题传递专业与艺术感,全栈响应式架构确保PC、平板、手机端无缝适配PHP程序结合轻量级SQLite数据库也可以更换MySQL数据库查看源码

相关教程

暂无内容
暂无内容
分享笔记 (共有 0 篇笔记)
昵称:
匿名发表 登录账号
         
验证码: