Registra una ruta de API REST.
Descripción
Nota: No lo use antes del gancho ‘rest_api_init’.
Parámetros
- $ espacio de nombres
-
(cuerda)(Requerido)El primer segmento de URL después del prefijo principal. Debe ser exclusivo de su paquete / complemento.
- $ ruta
-
(cuerda)(Requerido)La URL base de la ruta que está agregando.
- $ args
-
(formación)(Opcional) Ya sea una matriz de opciones para el punto final o una matriz de matrices para varios métodos.
Valor predeterminado: array ()
- $ anular
-
(bool)(Opcional) Si la ruta ya existe, ¿deberíamos anularla? Anulaciones verdaderas, fusiones falsas (con anulación más reciente si existen claves duplicadas).
Valor predeterminado: falso
Regreso
(bool) Verdadero en caso de éxito, falso en caso de error.
Fuente
Expediente: wp-includes / rest-api.php
functionregister_rest_route($namespace,$route,$args=array(),$override=false)if(empty($namespace))/* * Non-namespaced routes are not allowed, with the exception of the main * and namespace indexes. If you really need to register a * non-namespaced route, call `WP_REST_Server::register_route` directly. */_doing_it_wrong('register_rest_route',__('Routes must be namespaced with plugin or theme name and version.'),'4.4.0');returnfalse;elseif(empty($route))_doing_it_wrong('register_rest_route',__('Route must be specified.'),'4.4.0');returnfalse;$clean_namespace=trim($namespace,'/');if($clean_namespace!==$namespace)_doing_it_wrong(__FUNCTION__,__('Namespace must not start or end with a slash.'),'5.4.2');if(!did_action('rest_api_init'))_doing_it_wrong('register_rest_route',sprintf(/* translators: %s: rest_api_init */__('REST API routes must be registered on the %s action.'),'rest_api_init
'),'5.1.0');if(isset($args['args']))$common_args=$args['args'];unset($args['args']);else$common_args=array();if(isset($args['callback']))// Upgrade a single set to multiple.$args=array($args);$defaults=array('methods'=>'GET','callback'=>null,'args'=>array(),);foreach($argsas$key=>&$arg_group)if(!is_numeric($key))// Route option, skip here.continue;$arg_group=array_merge($defaults,$arg_group);$arg_group['args']=array_merge($common_args,$arg_group['args']);if(!isset($arg_group['permission_callback']))_doing_it_wrong(__FUNCTION__,sprintf(/* translators: 1: The REST API route being registered, 2: The argument name, 3: The suggested function name. */__('The REST API route definition for %1$s is missing the required %2$s argument. For REST API routes that are intended to be public, use %3$s as the permission callback.'),''
.$clean_namespace.'/'.trim($route,'/').'','permission_callback
','__return_true
'),'5.5.0');$full_route='/'.$clean_namespace.'/'.trim($route,'/');rest_get_server()->register_route($clean_namespace,$full_route,$args,$override);returntrue;
Relacionado
Usos
Usos | Descripción |
---|---|
wp-incluye / rest-api.php:rest_get_server () |
Recupera la instancia del servidor REST actual. |
wp-includes / l10n.php:__ () |
Recupere la traducción de $ text. |
wp-includes / functions.php:_Haciendolo mal() |
Marque algo como llamado incorrectamente. |
wp-includes / plugin.php:did_action () |
Recupera el número de veces que se activa una acción. |
Usado por
Usado por | Descripción |
---|---|
wp-includes / rest-api / endpoints / class-wp-rest-site-health-controller.php:WP_REST_Site_Health_Controller :: register_routes () |
Registra rutas API. |
wp-includes / rest-api / endpoints / class-wp-rest-application-passwords-controller.php:WP_REST_Application_Passwords_Controller :: register_routes () |
Registra las rutas de la API REST para el controlador de contraseñas de la aplicación. |
wp-includes / rest-api / endpoints / class-wp-rest-block-directory-controller.php:WP_REST_Block_Directory_Controller :: register_routes () |
Registra las rutas API REST necesarias. |
wp-includes / rest-api / endpoints / class-wp-rest-plugins-controller.php:WP_REST_Plugins_Controller :: register_routes () |
Registra las rutas para el controlador de complementos. |
wp-includes / rest-api / endpoints / class-wp-rest-block-types-controller.php:WP_REST_Block_Types_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-attachments-controller.php:WP_REST_Attachments_Controller :: register_routes () |
Registra las rutas para archivos adjuntos. |
wp-includes / rest-api / endpoints / class-wp-rest-search-controller.php:WP_REST_Search_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-themes-controller.php:WP_REST_Themes_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-autosaves-controller.php:WP_REST_Autosaves_Controller :: register_routes () |
Registra las rutas para autoguardados. |
wp-includes / rest-api / endpoints / class-wp-rest-block-renderer-controller.php:WP_REST_Block_Renderer_Controller :: register_routes () |
Registra las rutas API REST necesarias, una para cada bloque dinámico. |
wp-includes / rest-api / endpoints / class-wp-rest-users-controller.php:WP_REST_Users_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-revisions-controller.php:WP_REST_Revisions_Controller :: register_routes () |
Registra las rutas para las revisiones basadas en los tipos de publicaciones que respaldan las revisiones. |
wp-includes / rest-api / endpoints / class-wp-rest-post-statuses-controller.php:WP_REST_Post_Statuses_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-settings-controller.php:WP_REST_Settings_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-terms-controller.php:WP_REST_Terms_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-posts-controller.php:WP_REST_Posts_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-taxonomies-controller.php:WP_REST_Taxonomies_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-post-types-controller.php:WP_REST_Post_Types_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / rest-api / endpoints / class-wp-rest-comments-controller.php:WP_REST_Comments_Controller :: register_routes () |
Registra las rutas para los objetos del controlador. |
wp-includes / class-wp-oembed-controller.php:WP_oEmbed_Controller :: register_routes () |
Registre la ruta de la API REST de oEmbed. |
Registro de cambios
Versión | Descripción |
---|---|
5.5.0 | Se agregó un _doing_it_wrong() aviso cuando el requerido permission_callback El argumento no está establecido. |
5.1.0 | Se agregó un _doing_it_wrong() aviso cuando no se llama en o después de la rest_api_init gancho. |
4.4.0 | Introducido. |
Recuerda que tienes concesión de decir si diste con el resultado.