Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
wp-content
/
plugins
/
gutenberg
/
lib
/
compat
/
wordpress-6.6
:
blocks.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php /** * Temporary compatibility shims for block APIs present in Gutenberg. * * @package gutenberg */ /** * Replace the `__default` block bindings attribute with the full list of supported * attribute names for pattern overrides. * * @param array $parsed_block The full block, including name and attributes. * * @return string The parsed block with default binding replace. */ function gutenberg_replace_pattern_override_default_binding( $parsed_block ) { $supported_block_attrs = array( 'core/paragraph' => array( 'content' ), 'core/heading' => array( 'content' ), 'core/image' => array( 'id', 'url', 'title', 'alt' ), 'core/button' => array( 'url', 'text', 'linkTarget', 'rel' ), ); $bindings = $parsed_block['attrs']['metadata']['bindings'] ?? array(); if ( isset( $bindings['__default']['source'] ) && 'core/pattern-overrides' === $bindings['__default']['source'] ) { $updated_bindings = array(); // Build an binding array of all supported attributes. // Note that this also omits the `__default` attribute from the // resulting array. foreach ( $supported_block_attrs[ $parsed_block['blockName'] ] as $attribute_name ) { // Retain any non-pattern override bindings that might be present. $updated_bindings[ $attribute_name ] = isset( $bindings[ $attribute_name ] ) ? $bindings[ $attribute_name ] : array( 'source' => 'core/pattern-overrides' ); } $parsed_block['attrs']['metadata']['bindings'] = $updated_bindings; } return $parsed_block; } add_filter( 'render_block_data', 'gutenberg_replace_pattern_override_default_binding', 10, 1 );