24 lines
801 B
Twig
24 lines
801 B
Twig
/**
|
|
* Implements hook_cron().
|
|
*/
|
|
function {{ machine_name }}_cron() {
|
|
// Short-running operation example, not using a queue:
|
|
// Delete all expired records since the last cron run.
|
|
$expires = variable_get('mymodule_cron_last_run', REQUEST_TIME);
|
|
db_delete('mymodule_table')
|
|
->condition('expires', $expires, '>=')
|
|
->execute();
|
|
variable_set('mymodule_cron_last_run', REQUEST_TIME);
|
|
|
|
// Long-running operation example, leveraging a queue:
|
|
// Fetch feeds from other sites.
|
|
$result = db_query('SELECT * FROM {aggregator_feed} WHERE checked + refresh < :time AND refresh <> :never', array(
|
|
':time' => REQUEST_TIME,
|
|
':never' => AGGREGATOR_CLEAR_NEVER,
|
|
));
|
|
$queue = DrupalQueue::get('aggregator_feeds');
|
|
foreach ($result as $feed) {
|
|
$queue->createItem($feed);
|
|
}
|
|
}
|