WP_REST_Taxonomies_Controller::register_routes PHP Method

register_routes() public method

Registers the routes for the objects of the controller.
See also: register_rest_route()
Since: 4.7.0
public register_routes ( )
    public function register_routes()
    {
        register_rest_route($this->namespace, '/' . $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->rest_base . '/(?P<taxonomy>[\\w-]+)', 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')))), 'schema' => array($this, 'get_public_item_schema')));
    }

Usage Example

Example #1
0
/**
 * 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();
}
All Usage Examples Of WP_REST_Taxonomies_Controller::register_routes