| [ Index ] |
PHP Cross Reference of WordPress Trunk (Updated Daily) |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * Routes registration - Auto-generated by build process. 4 * Registers all routes on their respective page init hooks. 5 * Do not edit this file manually. 6 * 7 * @package wp 8 */ 9 10 // Load routes registry 11 $routes_file = __DIR__ . '/routes/index.php'; 12 if ( ! file_exists( $routes_file ) ) { 13 return; 14 } 15 16 $routes = require $routes_file; 17 18 // Group routes by page 19 $routes_by_page = array(); 20 foreach ( $routes as $route ) { 21 $page_slug = $route['page']; 22 if ( ! isset( $routes_by_page[ $page_slug ] ) ) { 23 $routes_by_page[ $page_slug ] = array(); 24 } 25 $routes_by_page[ $page_slug ][] = $route; 26 } 27 28 // Helper function to register routes for a page 29 $register_routes_callback = function ( $page_routes, $page_slug_underscore, $register_function_name ) { 30 return function () use ( $page_routes, $page_slug_underscore, $register_function_name ) { 31 foreach ( $page_routes as $route ) { 32 $content_handle = null; 33 $route_handle = null; 34 35 // Register content module if exists 36 if ( $route['has_content'] ) { 37 $content_asset_path = __DIR__ . "/routes/{$route['name']}/content.min.asset.php"; 38 if ( file_exists( $content_asset_path ) ) { 39 $content_asset = require $content_asset_path; 40 $content_handle = 'wp/routes/' . $route['name'] . '/content'; 41 $extension = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '.js' : '.min.js'; 42 wp_register_script_module( 43 $content_handle, 44 includes_url( 'build' ) . '/routes/' . $route['name'] . '/content' . $extension, 45 $content_asset['module_dependencies'] ?? array(), 46 $content_asset['version'] ?? false 47 ); 48 } 49 } 50 51 // Register route module if exists 52 if ( $route['has_route'] ) { 53 $route_asset_path = __DIR__ . "/routes/{$route['name']}/route.min.asset.php"; 54 if ( file_exists( $route_asset_path ) ) { 55 $route_asset = require $route_asset_path; 56 $route_handle = 'wp/routes/' . $route['name'] . '/route'; 57 $extension = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '.js' : '.min.js'; 58 wp_register_script_module( 59 $route_handle, 60 includes_url( 'build' ) . '/routes/' . $route['name'] . '/route' . $extension, 61 $route_asset['module_dependencies'] ?? array(), 62 $route_asset['version'] ?? false 63 ); 64 } 65 } 66 67 // Register route with page 68 if ( function_exists( $register_function_name ) ) { 69 call_user_func( $register_function_name, $route['path'], $content_handle, $route_handle ); 70 } 71 } 72 }; 73 }; 74 75 // Register hooks for both full-page and wp-admin modes 76 foreach ( $routes_by_page as $page_slug => $page_routes ) { 77 $page_slug_underscore = str_replace( '-', '_', $page_slug ); 78 79 // Register all routes for full-page mode (page.php) 80 add_action( 81 "{$page_slug}_init", 82 $register_routes_callback( $page_routes, $page_slug_underscore, "register_{$page_slug_underscore}_route" ) 83 ); 84 85 // Register all routes for wp-admin mode (page-wp-admin.php) 86 add_action( 87 "{$page_slug}-wp-admin_init", 88 $register_routes_callback( $page_routes, $page_slug_underscore, "register_{$page_slug_underscore}_wp_admin_route" ) 89 ); 90 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated : Wed Apr 15 08:20:10 2026 | Cross-referenced by PHPXref |