phpwordpresswoocommercewordpress-hook

wp_schedule_single_event() not creating wp-cron job but executed successfully


I am using the wp_schedule_single_event() function to create a wp-cron job that sends an email to the specified user at the specified time.

Mostly this wp-cron job is successfully created and the users get informed in time. But sometimes it just doesn't work.

Whats especially strange is that wp_schedule_single_event() always returns true (which means that it was executed successfully) even when the wp-cron job isn't created (I check that with the WP Crontrol plugin).

My code (write_log: custom function to log the given strings, time: the corresponding timestamp):

write_log('User ' . get_current_user_id() . ' now tries to create the addProductsExpired cron job with timestamp: ' . time);
$success = wp_schedule_single_event(time, 'hook_addProductsExpired', array(get_current_user_id()));
if (!$success) {
    write_log('The creation failed!'); 
}
write_log('User ' . get_current_user_id() . ' now tries to create the sendReminderMail cron job with timestamp: ' . time);
$success = wp_schedule_single_event(time - 60 * 60 * 24, 'hook_sendReminderMail', array(get_current_user_id()));
if (!$success) {
    write_log('The creation failed!');
}

I should also note that I never accomplished it to reproduce the error by myself

I so far tried:

None of them worked or threw an error i could debug.


Solution

  • I am now using actionsheduler.org as suggested by Terminator-Barbapapa in his comment to my question. So far I haven't experienced any issues.