Планирование событий в Wordpress и работа с 10-минутным лимитом - PullRequest
0 голосов
/ 10 января 2011

РЕДАКТИРОВАТЬ: Я думаю, что я решил проблему сейчас. Соответствующий код ниже. Это еще не было проверено, но я верю: p

Я пытаюсь создать плагин WordPress, который имеет переменные запланированные события. Согласно кодексу вы не можете запланировать событие с тем же именем в течение 10 минут друг от друга. Мой вопрос: какой хороший обходной путь, если я не могу гарантировать, что этого не произойдет?

Есть ли способ проверить, какое событие ближе всего ко времени, которое мне нужно, а затем добавить к нему 10м1?

Заранее спасибо,
Райан

<?php
/*** Creates an action, and schedules an event based on post_ID, and the passed time ***/
function plugin_schedule_event($post_ID,$time) {
  //This should be able to create a unique action name.
  $action_name = $post_ID.time();
  $event_array = array($post_ID,$action_name);
  add_action($action_name,'plugin_scheduled_event');
  wp_schedule_single_event($time, $action_name, $event_array);
}

/*** Runs the action created above, and then removes it. ***/
function plugin_scheduled_event($event_array) {
  $post_ID = $event_array[0];
  $action_name = $event_array[1];
  //Run the function to send the email or whatever is necessary.
  mailer_check_for_new_content($post_ID);
  //Cleanup the action after it's completed.
  remove_action($action_name,'plugin_scheduled_event');
}
?>
...