wp-includes/build/routes.php:41Generic helper function to register routes for a page.
$page_routesarray$register_function_namestringfunction wp_register_page_routes( $page_routes, $register_function_name ) { // Load build constants $build_constants = require __DIR__ . '/constants.php'; foreach ( $page_routes as $route ) { $content_handle = null; $route_handle = null; // Register content module if exists if ( $route['has_content'] ) { $content_asset_path = __DIR__ . "/routes/{$route['name']}/content.min.asset.php"; if ( file_exists( $content_asset_path ) ) { $content_asset = require $content_asset_path; $content_handle = 'wp/routes/' . $route['name'] . '/content'; $extension = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '.js' : '.min.js'; // Deregister first to override any previously registered version // (e.g., Core's default modules when running as a plugin). wp_deregister_script_module( $content_handle ); wp_register_script_module( $content_handle, $build_constants['build_url'] . 'routes/' . $route['name'] . '/content' . $extension, $content_asset['module_dependencies'] ?? array(), $content_asset['version'] ?? false ); } } // Register route module if exists if ( $route['has_route'] ) { $route_asset_path = __DIR__ . "/routes/{$route['name']}/route.min.asset.php"; if ( file_exists( $route_asset_path ) ) { $route_asset = require $route_asset_path; $route_handle = 'wp/routes/' . $route['name'] . '/route'; $extension = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '.js' : '.min.js'; // Deregister first to override any previously registered version // (e.g., Core's default modules when running as a plugin). wp_deregister_script_module( $route_handle ); wp_register_script_module( $route_handle, $build_constants['build_url'] . 'routes/' . $route['name'] . '/route' . $extension, $route_asset['module_dependencies'] ?? array(), $route_asset['version'] ?? false ); } } // Register route with page if ( function_exists( $register_function_name ) ) { call_user_func( $register_function_name, $route['path'], $content_handle, $route_handle ); } }}Unchanged from 7.0.4 through 7.1.0.
Signature, return type and hooks compared across 2 parsed releases.
src/wp-includes/build/routes.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.