WP_REST_Server::register_route( string $namespace, string $route, array $route_args, bool $override = false )
Registers a route to the server.
Parameters
- $namespace
-
(string) (Required) Namespace.
- $route
-
(string) (Required) The REST route.
- $route_args
-
(array) (Required) Route arguments.
- $override
-
(bool) (Optional) Whether the route should be overridden if it already exists.
Default value: false
Source
File: wp-includes/rest-api/class-wp-rest-server.php
public function register_route( $namespace, $route, $route_args, $override = false ) {
if ( ! isset( $this->namespaces[ $namespace ] ) ) {
$this->namespaces[ $namespace ] = array();
$this->register_route( $namespace, '/' . $namespace, array(
array(
'methods' => self::READABLE,
'callback' => array( $this, 'get_namespace_index' ),
'args' => array(
'namespace' => array(
'default' => $namespace,
),
'context' => array(
'default' => 'view',
),
),
),
) );
}
// Associative to avoid double-registration.
$this->namespaces[ $namespace ][ $route ] = true;
$route_args['namespace'] = $namespace;
if ( $override || empty( $this->endpoints[ $route ] ) ) {
$this->endpoints[ $route ] = $route_args;
} else {
$this->endpoints[ $route ] = array_merge( $this->endpoints[ $route ], $route_args );
}
}
Changelog
Version | Description |
---|---|
WP-4.4.0 | Introduced. |