Joomla是否可以定期自动执行插件

时间:2011-01-06 20:50:27

标签: php plugins joomla

您好我制作了一个Joomla插件,它可以获取一些外部内容并将其保存在HTML文件中。想知道是否可以定期自动执行此插件。

如果是,那么过程是什么?

或者另一种方法是可以将此脚本放在某个文件中并定期自动执行。

请帮助。

2 个答案:

答案 0 :(得分:4)

是的,你会想用cron做一个重复的计划任务,比如这个。请参阅cron上的this primer 例如,这里'是我每30分钟运行一次脚本的cron文件来更新Google保险箱信息......

# m h  dom mon dow   command
30 * * * * /usr/bin/php /OBFUSCATED/PATH/TO/MY/SCRIPT/listupdater.php

要进行此设置,您需要SSh访问您的服务器,并从命令行键入

crontab -e

您可能想要了解如何在vi风格的编辑器中进行编辑...

答案 1 :(得分:0)

Joomla是PHP,PHP不会定期执行。您需要从外部进程触发它。幸运的是,所有现代操作系统都为您提供了实现此目的的方法。它可以是一个cron作业(对于类似unix的操作系统)或一个预定任务(windows)。

您最想要的是添加一个执行页面(php <name of script>)的命令行PHP脚本。 Joomla非常依赖GET参数来进行路由...所以你可能想要考虑运行它不是作为Joomla插件,而是作为任意代码坐在.php文件中,同时仍然使用Joomla框架。或者写一个Joomla的index.php的替代方法,它用$ _GET填充路由到你的插件可以做的事情的页面所需的值。


或者,您可以创建一个加载每个请求的插件,该插件检查(通过文件或数据库字段)是否最近运行并且如果它不必执行任何操作则立即返回。当然这不太准确:它取决于稳定的综合浏览量。如果访问者恰好是请求触发此类维护工作的页面的访问者,则会导致访问者延迟。