wppaste
WordPress

WP_REST_Revisions_Controller

Since
4.7.0
Source
wp-includes/rest-api/endpoints/class-wp-rest-revisions-controller.php:17
Core class used to access revisions via the REST API.

Compatibility

WordPress
since 4.7.0
  • 6.7.7
  • 6.8.8
  • 6.9.7
  • 7.0.4
  • 7.1.0

Present in every tracked release (6.7.7 to 7.1.0).

Hooks and filters fired · 8

Every hook that fires from inside WP_REST_Revisions_Controller, in the order it appears in the class, grouped by the method that fires it.

Properties · 4

$parent_post_typestringprivate
Parent post type.
$metaWP_REST_Post_Meta_Fieldsprotected
Instance of a revision meta fields object.
$parent_controllerWP_REST_Controllerprivate
Parent controller.
$parent_basestringprivate
The base of the parent controller's route.

Methods · 16

Source code

class WP_REST_Revisions_Controller extends WP_REST_Controller { 	/**	 * Parent post type.	 *	 * @since 4.7.0	 * @var string	 */	private $parent_post_type; 	/**	 * Instance of a revision meta fields object.	 *	 * @since 6.4.0	 * @var WP_REST_Post_Meta_Fields	 */	protected $meta; 	/**	 * Parent controller.	 *	 * @since 4.7.0	 * @var WP_REST_Controller	 */	private $parent_controller; 	/**	 * The base of the parent controller's route.	 *	 * @since 4.7.0	 * @var string	 */	private $parent_base; 	/**	 * Constructor.	 *	 * @since 4.7.0	 *	 * @param string $parent_post_type Post type of the parent.	 */	public function __construct( $parent_post_type ) {		$this->parent_post_type = $parent_post_type;		$post_type_object       = get_post_type_object( $parent_post_type );		$parent_controller      = $post_type_object->get_rest_controller(); 		if ( ! $parent_controller ) {			$parent_controller = new WP_REST_Posts_Controller( $parent_post_type );		} 		$this->parent_controller = $parent_controller;		$this->rest_base         = 'revisions';		$this->parent_base       = ! empty( $post_type_object->rest_base ) ? $post_type_object->rest_base : $post_type_object->name;		$this->namespace         = ! empty( $post_type_object->rest_namespace ) ? $post_type_object->rest_namespace : 'wp/v2';		$this->meta              = new WP_REST_Post_Meta_Fields( $parent_post_type );	} 	/**	 * Registers the routes for revisions based on post types supporting revisions.	 *	 * @since 4.7.0	 *	 * @see register_rest_route()	 */	public function register_routes() { 		register_rest_route(			$this->namespace,			'/' . $this->parent_base . '/(?P<parent>[\d]+)/' . $this->rest_base,			array(				'args'   => array(					'parent' => array(						'description' => __( 'The ID for the parent of the revision.' ),						'type'        => 'integer',					),				),				array(					'methods'             => WP_REST_Server::READABLE,					'callback'            => array( $this, 'get_items' ),					'permission_callback' => array( $this, 'get_items_permissions_check' ),

Changelog

Introduced in 4.7.0. One change between 6.7.7 and 7.1.0.

  1. 6.7.7
  2. 6.8.8
  3. 6.9.7
  4. 7.0.4
  5. 7.1.0

Signature, return type and hooks compared across 5 parsed releases.

7.1.0
Method restore_post_data() added.verified against source
4.7.0
Introduced.from the docblock

About this page

Parsed data
Generated from the wordpress-develop 6.9.7 tag, from src/wp-includes/rest-api/endpoints/class-wp-rest-revisions-controller.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.
Corrections
Something wrong on this page? Report it and it gets fixed in the next regeneration.