public register_routes ( ) |
public function register_routes()
{
register_rest_route($this->namespace, '/' . $this->parent_base . '/(?P<parent>[\\d]+)/' . $this->rest_base, array(array('methods' => WP_REST_Server::READABLE, 'callback' => array($this, 'get_items'), 'permission_callback' => array($this, 'get_items_permissions_check'), 'args' => $this->get_collection_params()), 'schema' => array($this, 'get_public_item_schema')));
register_rest_route($this->namespace, '/' . $this->parent_base . '/(?P<parent>[\\d]+)/' . $this->rest_base . '/(?P<id>[\\d]+)', array(array('methods' => WP_REST_Server::READABLE, 'callback' => array($this, 'get_item'), 'permission_callback' => array($this, 'get_item_permissions_check'), 'args' => array('context' => $this->get_context_param(array('default' => 'view')))), array('methods' => WP_REST_Server::DELETABLE, 'callback' => array($this, 'delete_item'), 'permission_callback' => array($this, 'delete_item_permissions_check'), 'args' => array('force' => array('type' => 'boolean', 'default' => false, 'description' => __('Required to be true, as revisions do not support trashing.')))), 'schema' => array($this, 'get_public_item_schema')));
}
/** * Registers default REST API routes. * * @since 4.7.0 */ function create_initial_rest_routes() { foreach (get_post_types(array('show_in_rest' => true), 'objects') as $post_type) { $class = !empty($post_type->rest_controller_class) ? $post_type->rest_controller_class : 'WP_REST_Posts_Controller'; if (!class_exists($class)) { continue; } $controller = new $class($post_type->name); if (!is_subclass_of($controller, 'WP_REST_Controller')) { continue; } $controller->register_routes(); if (post_type_supports($post_type->name, 'revisions')) { $revisions_controller = new WP_REST_Revisions_Controller($post_type->name); $revisions_controller->register_routes(); } } // Post types. $controller = new WP_REST_Post_Types_Controller(); $controller->register_routes(); // Post statuses. $controller = new WP_REST_Post_Statuses_Controller(); $controller->register_routes(); // Taxonomies. $controller = new WP_REST_Taxonomies_Controller(); $controller->register_routes(); // Terms. foreach (get_taxonomies(array('show_in_rest' => true), 'object') as $taxonomy) { $class = !empty($taxonomy->rest_controller_class) ? $taxonomy->rest_controller_class : 'WP_REST_Terms_Controller'; if (!class_exists($class)) { continue; } $controller = new $class($taxonomy->name); if (!is_subclass_of($controller, 'WP_REST_Controller')) { continue; } $controller->register_routes(); } // Users. $controller = new WP_REST_Users_Controller(); $controller->register_routes(); // Comments. $controller = new WP_REST_Comments_Controller(); $controller->register_routes(); // Settings. $controller = new WP_REST_Settings_Controller(); $controller->register_routes(); }