Make WordPress Core

Changeset 59543


Ignore:
Timestamp:
12/19/2024 01:24:22 PM (3 months ago)
Author:
Bernhard Reiter
Message:

Block Hooks: Apply to synced patterns.

Apply Block Hooks to synced patterns (i.e. core/block instances).

Props bernhard-reiter, gziolo.
Fixes #62704.

Location:
trunk/src/wp-includes
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/blocks.php

    r59523 r59543  
    12201220    if ( 'wp_navigation' === $post->post_type ) {
    12211221        $wrapper_block_type = 'core/navigation';
     1222    } elseif ( 'wp_block' === $post->post_type ) {
     1223        $wrapper_block_type = 'core/block';
    12221224    } else {
    12231225        $wrapper_block_type = 'core/post-content';
     
    12921294 */
    12931295function insert_hooked_blocks_into_rest_response( $response, $post ) {
    1294     if ( empty( $response->data['content']['raw'] ) || empty( $response->data['content']['rendered'] ) ) {
     1296    if ( empty( $response->data['content']['raw'] ) ) {
    12951297        return $response;
    12961298    }
     
    13071309    if ( 'wp_navigation' === $post->post_type ) {
    13081310        $wrapper_block_type = 'core/navigation';
     1311    } elseif ( 'wp_block' === $post->post_type ) {
     1312        $wrapper_block_type = 'core/block';
    13091313    } else {
    13101314        $wrapper_block_type = 'core/post-content';
     
    13271331
    13281332    $response->data['content']['raw'] = $content;
     1333
     1334    // If the rendered content was previously empty, we leave it like that.
     1335    if ( empty( $response->data['content']['rendered'] ) ) {
     1336        return $response;
     1337    }
    13291338
    13301339    // `apply_block_hooks_to_content` is called above. Ensure it is not called again as a filter.
  • trunk/src/wp-includes/default-filters.php

    r59523 r59543  
    761761add_filter( 'rest_pre_insert_wp_template_part', 'inject_ignored_hooked_blocks_metadata_attributes' );
    762762
    763 // Update ignoredHookedBlocks postmeta for wp_navigation post type.
     763// Update ignoredHookedBlocks postmeta for some post types.
    764764add_filter( 'rest_pre_insert_page', 'update_ignored_hooked_blocks_postmeta' );
    765765add_filter( 'rest_pre_insert_post', 'update_ignored_hooked_blocks_postmeta' );
     766add_filter( 'rest_pre_insert_wp_block', 'update_ignored_hooked_blocks_postmeta' );
    766767add_filter( 'rest_pre_insert_wp_navigation', 'update_ignored_hooked_blocks_postmeta' );
    767768
     
    769770add_filter( 'rest_prepare_page', 'insert_hooked_blocks_into_rest_response', 10, 2 );
    770771add_filter( 'rest_prepare_post', 'insert_hooked_blocks_into_rest_response', 10, 2 );
     772add_filter( 'rest_prepare_wp_block', 'insert_hooked_blocks_into_rest_response', 10, 2 );
    771773add_filter( 'rest_prepare_wp_navigation', 'insert_hooked_blocks_into_rest_response', 10, 2 );
    772774
Note: See TracChangeset for help on using the changeset viewer.