Editor: Add wakeup magic method to the block bindings registry

See #60282.
Follow-up [57373].
Props dmsnell, mukesh27, gziolo.



git-svn-id: https://develop.svn.wordpress.org/trunk@57575 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Greg Ziółkowski 2024-02-09 10:52:09 +00:00
parent ac11d1bbe4
commit acad00ecab
2 changed files with 20 additions and 1 deletions

View File

@ -211,6 +211,25 @@ final class WP_Block_Bindings_Registry {
return isset( $this->sources[ $source_name ] );
}
/**
* Wakeup magic method.
*
* @since 6.5.0
*/
public function __wakeup() {
if ( ! $this->sources ) {
return;
}
if ( ! is_array( $this->sources ) ) {
throw new UnexpectedValueException();
}
foreach ( $this->sources as $value ) {
if ( ! $value instanceof WP_Block_Bindings_Source ) {
throw new UnexpectedValueException();
}
}
}
/**
* Utility method to retrieve the main instance of the class.
*

View File

@ -413,7 +413,7 @@ class WP_Block {
// Process the block bindings and get attributes updated with the values from the sources.
$computed_attributes = $this->process_block_bindings();
if ( ! empty( $computed_attributes ) ) {
// Merge the computed attributes with the original attributes
// Merge the computed attributes with the original attributes.
$this->attributes = array_merge( $this->attributes, $computed_attributes );
}