Je suis en train de construire un module mais je suis bloqué .. J'ai besoin de l'horodatage du cron précédent pendant que j'exécute un travail hook_cron pour pouvoir vérifier quels nœuds sont nouveaux et les envoyer par e-mail.
J'ai donc besoin de la date/heure de la dernière exécution cron, mais comment puis-je y arriver?
Un horodatage UNIX de la dernière exécution cron peut être récupéré avec:
variable_get('cron_last');
Si vous en avez besoin, vous pouvez facilement manipuler un horodatage UNIX avec la fonction date de PHP.
la fonction hook_requirement () peut vous aider.
Vérifiez ceci: http://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_requirements/7
Dans votre fichier de module, écrivez la fonction hook_requirement ().
function hook_requirements($phase) {
if ($phase == 'runtime') {
$cron_last = variable_get('cron_last');
if (is_numeric($cron_last)) {
$requirements['cron']['value'] = $t('Last run !time ago', array('!time' => format_interval(REQUEST_TIME - $cron_last)));
}
else {
$requirements['cron'] = array(
'description' => $t('Cron has not run. It appears cron jobs have not been setup on your system. Check the help pages for <a href="@url">configuring cron jobs</a>.', array('@url' => 'http://drupal.org/cron')),
'severity' => REQUIREMENT_ERROR,
'value' => $t('Never run'),
);
}
$requirements['cron']['description'] .= ' ' . $t('You can <a href="@cron">run cron manually</a>.', array('@cron' => url('admin/reports/status/run-cron')));
$requirements['cron']['title'] = $t('Cron maintenance tasks');
}
}