Changeset 61504
- Timestamp:
- 01/20/2026 11:01:11 PM (7 weeks ago)
- Location:
- trunk
- Files:
-
- 3 added
- 5 edited
-
.gitignore (modified) (1 diff)
-
src/wp-includes/blocks.php (modified) (1 diff)
-
src/wp-includes/class-wp-block-parser-block.php (added)
-
src/wp-includes/class-wp-block-parser-frame.php (added)
-
src/wp-includes/class-wp-block-parser.php (added)
-
src/wp-includes/formatting.php (modified) (1 diff)
-
src/wp-settings.php (modified) (1 diff)
-
tools/gutenberg/copy-gutenberg-build.js (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/.gitignore
r61492 r61504 39 39 !/src/wp-includes/blocks/index.php 40 40 /src/wp-includes/build 41 /src/wp-includes/class-wp-block-parser.php42 /src/wp-includes/class-wp-block-parser-block.php43 /src/wp-includes/class-wp-block-parser-frame.php44 41 /src/wp-includes/theme.json 45 42 /packagehash.txt -
trunk/src/wp-includes/blocks.php
r61492 r61504 2422 2422 $parser_class = apply_filters( 'block_parser_class', 'WP_Block_Parser' ); 2423 2423 2424 if ( ! class_exists( $parser_class ) ) {2425 return array();2426 }2427 2428 2424 $parser = new $parser_class(); 2429 2425 return $parser->parse( $content ); -
trunk/src/wp-includes/formatting.php
r61492 r61504 5228 5228 */ 5229 5229 function wp_pre_kses_block_attributes( $content, $allowed_html, $allowed_protocols ) { 5230 // If the block parser isn't available, skip block attribute filtering.5231 if ( ! class_exists( 'WP_Block_Parser' ) ) {5232 return $content;5233 }5234 5235 5230 /* 5236 5231 * `filter_block_content` is expected to call `wp_kses`. Temporarily remove -
trunk/src/wp-settings.php
r61492 r61504 378 378 require ABSPATH . WPINC . '/class-wp-block-list.php'; 379 379 require ABSPATH . WPINC . '/class-wp-block-metadata-registry.php'; 380 if ( file_exists( ABSPATH . WPINC . '/class-wp-block-parser-block.php' ) ) { 381 require ABSPATH . WPINC . '/class-wp-block-parser-block.php'; 382 } 383 if ( file_exists( ABSPATH . WPINC . '/class-wp-block-parser-frame.php' ) ) { 384 require ABSPATH . WPINC . '/class-wp-block-parser-frame.php'; 385 } 386 if ( file_exists( ABSPATH . WPINC . '/class-wp-block-parser.php' ) ) { 387 require ABSPATH . WPINC . '/class-wp-block-parser.php'; 388 } 380 require ABSPATH . WPINC . '/class-wp-block-parser-block.php'; 381 require ABSPATH . WPINC . '/class-wp-block-parser-frame.php'; 382 require ABSPATH . WPINC . '/class-wp-block-parser.php'; 389 383 require ABSPATH . WPINC . '/class-wp-classic-to-block-menu-converter.php'; 390 384 require ABSPATH . WPINC . '/class-wp-navigation-fallback.php'; -
trunk/tools/gutenberg/copy-gutenberg-build.js
r61492 r61504 88 88 styles: 'styles/widgets', 89 89 php: 'widgets/src/blocks', 90 },91 ],92 },93 94 // PHP source files (non-block files, copied from packages)95 phpSource: {96 files: [97 {98 // Block parser classes99 package: 'block-serialization-default-parser',100 files: [101 'class-wp-block-parser.php',102 'class-wp-block-parser-block.php',103 'class-wp-block-parser-frame.php',104 ],105 destination: '', // Root of wp-includes106 90 }, 107 91 ], … … 1029 1013 copyBlockAssets( COPY_CONFIG.blocks ); 1030 1014 1031 // 6. Copy non-block PHP source files (from packages) 1032 console.log( '\n📦 Copying non-block PHP files...' ); 1033 const phpSourceConfig = COPY_CONFIG.phpSource; 1034 1035 for ( const fileGroup of phpSourceConfig.files ) { 1036 const packageSrc = path.join( gutenbergPackagesDir, fileGroup.package ); 1037 1038 if ( ! fs.existsSync( packageSrc ) ) { 1039 console.log( ` ⚠️ Package not found: ${ fileGroup.package }` ); 1040 continue; 1041 } 1042 1043 for ( const file of fileGroup.files ) { 1044 const src = path.join( packageSrc, file ); 1045 const dest = path.join( 1046 wpIncludesDir, 1047 fileGroup.destination, 1048 file 1049 ); 1050 1051 if ( fs.existsSync( src ) ) { 1052 fs.mkdirSync( path.dirname( dest ), { recursive: true } ); 1053 let content = fs.readFileSync( src, 'utf8' ); 1054 fs.writeFileSync( dest, content ); 1055 } 1056 } 1057 console.log( 1058 ` ✅ ${ fileGroup.package } (${ fileGroup.files.length } files)` 1059 ); 1060 } 1061 1062 // 7. Copy theme JSON files (from Gutenberg lib directory) 1015 // 6. Copy theme JSON files (from Gutenberg lib directory) 1063 1016 console.log( '\n📦 Copying theme JSON files...' ); 1064 1017 const themeJsonConfig = COPY_CONFIG.themeJson; … … 1087 1040 } 1088 1041 1089 // 9. Generate script-modules-packages.min.php from individual asset files1042 // 7. Generate script-modules-packages.min.php from individual asset files 1090 1043 console.log( '\n📦 Generating script-modules-packages.min.php...' ); 1091 1044 generateScriptModulesPackages(); 1092 1045 1093 // 10. Generate script-loader-packages.min.php1046 // 8. Generate script-loader-packages.min.php 1094 1047 console.log( '\n📦 Generating script-loader-packages.min.php...' ); 1095 1048 generateScriptLoaderPackages(); 1096 1049 1097 // 11. Generate require-dynamic-blocks.php and require-static-blocks.php1050 // 9. Generate require-dynamic-blocks.php and require-static-blocks.php 1098 1051 console.log( '\n📦 Generating block registration files...' ); 1099 1052 generateBlockRegistrationFiles(); 1100 1053 1101 // 1 2. Generate blocks-json.php from block.json files1054 // 10. Generate blocks-json.php from block.json files 1102 1055 console.log( '\n📦 Generating blocks-json.php...' ); 1103 1056 generateBlocksJson();
Note: See TracChangeset
for help on using the changeset viewer.