wp_get_latest_revision_id_and_total_count() – Returns the latest revision ID and count of revisions for a post.

You appear to be a bot. Output may be restricted

Description

Returns the latest revision ID and count of revisions for a post.

Usage

$array|WP_Error = wp_get_latest_revision_id_and_total_count( $post );

Parameters

$post
( int|WP_Post ) optional – Optional. Post ID or WP_Post object. Default is global $post.
$latest_id
( int ) optional – The latest revision post ID or 0 if no revisions exist.
$count
( int ) optional – The total count of revisions for the given post. }

Returns

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.

Source

File name: wordpress/wp-includes/revision.php


Lines:

1 to 38 of 38
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,
  );
}
 

 View on GitHub View on Trac