wp_get_latest_revision_id_and_total_count( int|WP_Post $post )
Returns the latest revision ID and count of revisions for a post.
Parameters
- $post
-
(Optional) Post ID or WP_Post object. Default is global $post.
Return
(array|WP_Error) Returns associative array with latest revision ID and total count, or a WP_Error if the post does not exist or revisions are not enabled.<br>
- 'latest_id'
(int) The latest revision post ID or 0 if no revisions exist.<br> - 'count'
(int) The total count of revisions for the given post.<br>
Source
File: wp-includes/revision.php
function wp_get_latest_revision_id_and_total_count( $post = 0 ) {
$post = get_post( $post );
if ( ! $post ) {
return new WP_Error( 'invalid_post', __( 'Invalid post.' ) );
}
if ( ! wp_revisions_enabled( $post ) ) {
return new WP_Error( 'revisions_not_enabled', __( 'Revisions not enabled.' ) );
}
$args = array(
'post_parent' => $post->ID,
'fields' => 'ids',
'post_type' => 'revision',
'post_status' => 'inherit',
'order' => 'DESC',
'orderby' => 'date ID',
'posts_per_page' => 1,
'ignore_sticky_posts' => true,
);
$revision_query = new WP_Query();
$revisions = $revision_query->query( $args );
if ( ! $revisions ) {
return array(
'latest_id' => 0,
'count' => 0,
);
}
return array(
'latest_id' => $revisions[0],
'count' => $revision_query->found_posts,
);
}
Changelog
Version | Description |
---|---|
6.1.0 | Introduced. |