wp_get_post_revision

The timeline below displays how wordpress function wp_get_post_revision has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.2

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   Post ID or post object.
 * @param string      $output Optional. The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which
 *                            correspond to a WP_Post object, an associative array, or a numeric array,
 *                            respectively. Default OBJECT.
 * @param string      $filter Optional sanitization filter. See sanitize_post(). Default 'raw'.
 * @return WP_Post|array|null WP_Post (or array) on success, or null on failure.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    $revision = get_post($post, OBJECT, $filter);
    if (!$revision) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if (OBJECT === $output) {
        return $revision;
    } elseif (ARRAY_A === $output) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif (ARRAY_N === $output) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 6.1

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   Post ID or post object.
 * @param string      $output Optional. The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which
 *                            correspond to a WP_Post object, an associative array, or a numeric array,
 *                            respectively. Default OBJECT.
 * @param string      $filter Optional sanitization filter. See sanitize_post().
 * @return WP_Post|array|null WP_Post (or array) on success, or null on failure.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    $revision = get_post($post, OBJECT, $filter);
    if (!$revision) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if (OBJECT === $output) {
        return $revision;
    } elseif (ARRAY_A === $output) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif (ARRAY_N === $output) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 5.8

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   The post ID or object.
 * @param string      $output Optional. The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which
 *                            correspond to a WP_Post object, an associative array, or a numeric array,
 *                            respectively. Default OBJECT.
 * @param string      $filter Optional sanitation filter. See sanitize_post().
 * @return WP_Post|array|null WP_Post (or array) on success, or null on failure.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    $revision = get_post($post, OBJECT, $filter);
    if (!$revision) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if (OBJECT === $output) {
        return $revision;
    } elseif (ARRAY_A === $output) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif (ARRAY_N === $output) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 5.5

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   The post ID or object.
 * @param string      $output Optional. The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which
 *                            correspond to a WP_Post object, an associative array, or a numeric array,
 *                            respectively. Default OBJECT.
 * @param string      $filter Optional sanitation filter. See sanitize_post().
 * @return WP_Post|array|null WP_Post (or array) on success, or null on failure.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    $revision = get_post($post, OBJECT, $filter);
    if (!$revision) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if (OBJECT == $output) {
        return $revision;
    } elseif (ARRAY_A == $output) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif (ARRAY_N == $output) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 5.4

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   The post ID or object.
 * @param string      $output Optional. The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which correspond to
 *                            a WP_Post object, an associative array, or a numeric array, respectively. Default OBJECT.
 * @param string      $filter Optional sanitation filter. See sanitize_post().
 * @return WP_Post|array|null WP_Post (or array) on success, or null on failure.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    $revision = get_post($post, OBJECT, $filter);
    if (!$revision) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if (OBJECT == $output) {
        return $revision;
    } elseif (ARRAY_A == $output) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif (ARRAY_N == $output) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 5.3

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   The post ID or object.
 * @param string      $output Optional. The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which correspond to
 *                            a WP_Post object, an associative array, or a numeric array, respectively. Default OBJECT.
 * @param string      $filter Optional sanitation filter. See sanitize_post().
 * @return WP_Post|array|null WP_Post (or array) on success, or null on failure.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    $revision = get_post($post, OBJECT, $filter);
    if (!$revision) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if ($output == OBJECT) {
        return $revision;
    } elseif ($output == ARRAY_A) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif ($output == ARRAY_N) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 4.7

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   The post ID or object.
 * @param string      $output Optional. The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which correspond to
 *                            a WP_Post object, an associative array, or a numeric array, respectively. Default OBJECT.
 * @param string      $filter Optional sanitation filter. See sanitize_post().
 * @return WP_Post|array|null WP_Post (or array) on success, or null on failure.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    if (!$revision = get_post($post, OBJECT, $filter)) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if ($output == OBJECT) {
        return $revision;
    } elseif ($output == ARRAY_A) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif ($output == ARRAY_N) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 4.6

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   The post ID or object.
 * @param string      $output Optional. OBJECT, ARRAY_A, or ARRAY_N.
 * @param string      $filter Optional sanitation filter. See sanitize_post().
 * @return WP_Post|array|null Null if error or post object if success.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    if (!$revision = get_post($post, OBJECT, $filter)) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if ($output == OBJECT) {
        return $revision;
    } elseif ($output == ARRAY_A) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif ($output == ARRAY_N) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 4.3

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|WP_Post $post   The post ID or object.
 * @param string      $output Optional. OBJECT, ARRAY_A, or ARRAY_N.
 * @param string      $filter Optional sanitation filter. @see sanitize_post().
 * @return WP_Post|array|null Null if error or post object if success.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    if (!$revision = get_post($post, OBJECT, $filter)) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if ($output == OBJECT) {
        return $revision;
    } elseif ($output == ARRAY_A) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif ($output == ARRAY_N) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 4.1

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @param int|object $post The post ID or object.
 * @param string $output Optional. OBJECT, ARRAY_A, or ARRAY_N.
 * @param string $filter Optional sanitation filter. @see sanitize_post().
 * @return mixed Null if error or post object if success.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    if (!$revision = get_post($post, OBJECT, $filter)) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if ($output == OBJECT) {
        return $revision;
    } elseif ($output == ARRAY_A) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif ($output == ARRAY_N) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 3.9

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @uses get_post()
 *
 * @param int|object $post The post ID or object.
 * @param string $output Optional. OBJECT, ARRAY_A, or ARRAY_N.
 * @param string $filter Optional sanitation filter. @see sanitize_post().
 * @return mixed Null if error or post object if success.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    if (!$revision = get_post($post, OBJECT, $filter)) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return null;
    }
    if ($output == OBJECT) {
        return $revision;
    } elseif ($output == ARRAY_A) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif ($output == ARRAY_N) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}

WordPress Version: 3.7

/**
 * Gets a post revision.
 *
 * @since 2.6.0
 *
 * @uses get_post()
 *
 * @param int|object $post The post ID or object.
 * @param string $output Optional. OBJECT, ARRAY_A, or ARRAY_N.
 * @param string $filter Optional sanitation filter. @see sanitize_post().
 * @return mixed Null if error or post object if success.
 */
function wp_get_post_revision(&$post, $output = OBJECT, $filter = 'raw')
{
    $null = null;
    if (!$revision = get_post($post, OBJECT, $filter)) {
        return $revision;
    }
    if ('revision' !== $revision->post_type) {
        return $null;
    }
    if ($output == OBJECT) {
        return $revision;
    } elseif ($output == ARRAY_A) {
        $_revision = get_object_vars($revision);
        return $_revision;
    } elseif ($output == ARRAY_N) {
        $_revision = array_values(get_object_vars($revision));
        return $_revision;
    }
    return $revision;
}