From e1f9e1eaa091efe0f0c6d36ea8573b996e995f4f Mon Sep 17 00:00:00 2001 From: Pascal Birchler Date: Fri, 24 Mar 2017 19:05:34 +0000 Subject: [PATCH] Posts, Post Types: Add missing REST API properties to `WP_Post_Type` class. Props danielbachhuber. Fixes #39986. Merges [40302] to the 4.7 branch. Built from https://develop.svn.wordpress.org/branches/4.7@40329 git-svn-id: http://core.svn.wordpress.org/branches/4.7@40236 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-includes/class-wp-post-type.php | 85 +++++++++++++++++++++--------- wp-includes/version.php | 2 +- 2 files changed, 61 insertions(+), 26 deletions(-) diff --git a/wp-includes/class-wp-post-type.php b/wp-includes/class-wp-post-type.php index 0b1d3c00e9..69b9834db1 100644 --- a/wp-includes/class-wp-post-type.php +++ b/wp-includes/class-wp-post-type.php @@ -333,6 +333,38 @@ final class WP_Post_Type { */ public $supports; + /** + * Whether this post type should appear in the REST API. + * + * Default false. If true, standard endpoints will be registered with + * respect to $rest_base and $rest_controller_class. + * + * @since 4.7.4 + * @access public + * @var bool $show_in_rest + */ + public $show_in_rest; + + /** + * The base path for this post type's REST API endpoints. + * + * @since 4.7.4 + * @access public + * @var string|bool $rest_base + */ + public $rest_base; + + /** + * The controller for this post type's REST API endpoints. + * + * Custom controllers must extend WP_REST_Controller. + * + * @since 4.7.4 + * @access public + * @var string|bool $rest_controller_class + */ + public $rest_controller_class; + /** * Constructor. * @@ -379,31 +411,34 @@ final class WP_Post_Type { // Args prefixed with an underscore are reserved for internal use. $defaults = array( - 'labels' => array(), - 'description' => '', - 'public' => false, - 'hierarchical' => false, - 'exclude_from_search' => null, - 'publicly_queryable' => null, - 'show_ui' => null, - 'show_in_menu' => null, - 'show_in_nav_menus' => null, - 'show_in_admin_bar' => null, - 'menu_position' => null, - 'menu_icon' => null, - 'capability_type' => 'post', - 'capabilities' => array(), - 'map_meta_cap' => null, - 'supports' => array(), - 'register_meta_box_cb' => null, - 'taxonomies' => array(), - 'has_archive' => false, - 'rewrite' => true, - 'query_var' => true, - 'can_export' => true, - 'delete_with_user' => null, - '_builtin' => false, - '_edit_link' => 'post.php?post=%d', + 'labels' => array(), + 'description' => '', + 'public' => false, + 'hierarchical' => false, + 'exclude_from_search' => null, + 'publicly_queryable' => null, + 'show_ui' => null, + 'show_in_menu' => null, + 'show_in_nav_menus' => null, + 'show_in_admin_bar' => null, + 'menu_position' => null, + 'menu_icon' => null, + 'capability_type' => 'post', + 'capabilities' => array(), + 'map_meta_cap' => null, + 'supports' => array(), + 'register_meta_box_cb' => null, + 'taxonomies' => array(), + 'has_archive' => false, + 'rewrite' => true, + 'query_var' => true, + 'can_export' => true, + 'delete_with_user' => null, + 'show_in_rest' => false, + 'rest_base' => false, + 'rest_controller_class' => false, + '_builtin' => false, + '_edit_link' => 'post.php?post=%d', ); $args = array_merge( $defaults, $args ); diff --git a/wp-includes/version.php b/wp-includes/version.php index afe63340b2..3ca902d86e 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -4,7 +4,7 @@ * * @global string $wp_version */ -$wp_version = '4.7.4-alpha-40328'; +$wp_version = '4.7.4-alpha-40329'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.