Automattic\WooCommerce\StoreApi
RoutesController::get_all_routes
Get a route path without instantiating the corresponding RoutesController object.
Method of the class: RoutesController{}
No Hooks.
Returns
String[]. List of route paths.
Usage
$RoutesController = new RoutesController(); $RoutesController->get_all_routes( $version, $controller );
- $version(string)
- API Version being requested.
Default:'v1' - $controller(string)
- Whether to return controller name. If false, returns empty array. Note: When
$controllerparam is true, the output should not be used directly in front-end code, to prevent class names from leaking. It's not a security issue necessarily, but it's not a good practice. When$controllerparam is false, it currently returns and empty array. But it can be modified in future to return include more details about the route info that can be used in frontend.
Default:false
RoutesController::get_all_routes() RoutesController::get all routes code WC 10.8.1
public function get_all_routes( $version = 'v1', $controller = false ) {
$routes = array();
foreach ( $this->routes[ $version ] as $key => $route_class ) {
if ( ! method_exists( $route_class, 'get_path_regex' ) ) {
throw new \Exception( esc_html( "{$route_class} route does not have a get_path_regex method" ) );
}
$route_path = '/' . trailingslashit( self::$api_namespace ) . $version . $route_class::get_path_regex();
$routes[ $route_path ] = $controller ? $route_class : array();
}
return $routes;
}