如何通过插件在moodle中设置cron脚本

How to setup cron script in moodle through plugin

我想 运行 我的 cron 脚本以在 blocks/plugin_name/cron.php 创建的预定时间间隔运行。请帮助我如何定期创建和调用此 cron 脚本 运行。

Cron.php 是旧方法,您应该在 blocks/plugin_name/lib.php

中创建一个 function plugin_name_cron()

然后在 version.php 你有一个 cron 参数,它将告诉 Moodle 每 x 秒 运行 插件。

$plugin->cron = 0; // Seconds.

所以每 15 分钟是

$plugin->cron = 15*60; // Seconds.

0 秒意味着永不 运行 cron。

这也取决于管理 cron 运行。如果管理员 cron 每 60 分钟 运行,那么您的插件 cron 只会 运行 每 60 分钟。

为了测试,您可以从 http://yoursite.com/admin/cron.php

手动 运行 管理 cron

如果您想在特定时间安排 cron 运行,那么您需要在 cron 函数中添加一些代码来计算安排的时间。

编辑:

实际上,块的 cron 函数略有不同。在您的 class class block_plugin_name extends block_base..

中创建一个 function cron()

更新:

从 Moodle 2.7+ 开始,以上内容已被计划任务取代https://docs.moodle.org/dev/Task_API#Scheduled_task_usage