WordPress at a glance
filter is not described

pre_schedule_event filter-hook . WP 5.1.0

Filter to preflight or hijack scheduling an event.

Returning a non-null value will short-circuit adding the event to the cron array, causing the function to return the filtered value instead.

Both single events and recurring events are passed through this filter; single events have $event->schedule as false, whereas recurring events have this set to a recurrence from wp_get_schedules(). Recurring events also have the integer recurrence interval set as $event->interval.

For plugins replacing wp-cron, it is recommended you check for an identical event within ten minutes and apply the 'schedule_event' filter to check if another plugin has disallowed the event before scheduling.

Return true if the event was scheduled, false if not.


add_filter( 'pre_schedule_event', 'filter_function_name_928', 10, 2 );
function filter_function_name_928( $pre, $event ){
	// filter...

	return $pre;
Value to return instead.
Default: null to continue adding the event

An object containing an event's data.

  • $hook (string)
    Action hook to execute when the event is run.

  • $timestamp (int)
    Unix timestamp (UTC) for when to next run the event.

  • $schedule (string/false)
    How often the event should subsequently recur.

  • $args (array)
    Array containing each separate argument to pass to the hook's callback function.

  • $interval (int)
    The interval time in seconds for the schedule. Only present for recurring events.


Since 5.1.0 Introduced.

Where the hook is called

wp-includes/cron.php 77
$pre = apply_filters( 'pre_schedule_event', null, $event );
wp-includes/cron.php 209
$pre = apply_filters( 'pre_schedule_event', null, $event );

Where the hook is used (in WP core)

Usage not found!