check_and_publish_future_post( int|WP_Post $post_id )

Publish future post and make sure post ID has future post status.


Description Description

Invoked by cron ‘publish_future_post’ event. This safeguard prevents cron from publishing drafts, etc.


Parameters Parameters

$post_id

(int|WP_Post) (Required) Post ID or post object.


Top ↑

Source Source

File: wp-includes/post.php

function check_and_publish_future_post( $post_id ) {
	$post = get_post( $post_id );

	if ( empty( $post ) ) {
		return;
	}

	if ( 'future' != $post->post_status ) {
		return;
	}

	$time = strtotime( $post->post_date_gmt . ' GMT' );

	// Uh oh, someone jumped the gun!
	if ( $time > time() ) {
		wp_clear_scheduled_hook( 'publish_future_post', array( $post_id ) ); // clear anything else in the system
		wp_schedule_single_event( $time, 'publish_future_post', array( $post_id ) );
		return;
	}

	// wp_publish_post() returns no meaningful value.
	wp_publish_post( $post_id );
}

Top ↑

Changelog Changelog

Changelog
Version Description
2.5.0 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.