Cron is a unix tool which executes commands at a specific time of day (other operating systems have similar tools). This keys off a file called a crontab – an example is given file is included and called crontab.example.

The crontab calls simplified yet powerful cron endpoint – http://yoursite/pg/cron/PERIOD, where PERIOD is one of the following:

reboot – Execute on system reboot

minute – Execute every minute

fiveminute – Execute every five minutes

fifteenmin – Execute every fifteen minutes

halfhour – Execute every half hour

hourly – Execute once every hour

daily – Execute every day

weekly – Execute weekly

monthly – Execute once a month

yearly – Execute every year

When these endpoints are triggered by your crontab a plugin hook is triggered. To make use of this, register a plugin hook as follows:

register_plugin_hook('cron', PERIOD, 'my_cron_handler');

Where PERIOD is one of the key words listed above. Here is some sample code using Cron – in this case it is taken from the system log rotation module I added to SVN today.