WP_Block_Supports::apply_block_supports
Generates an array of HTML attributes, such as classes, by applying to the given block all of the features that the block supports.
Method of the class: WP_Block_Supports{}
No Hooks.
Returns
String[]. Array of HTML attribute values keyed by their name.
Usage
$WP_Block_Supports = new WP_Block_Supports(); $WP_Block_Supports->apply_block_supports();
Changelog
| Since 5.6.0 | Introduced. |
WP_Block_Supports::apply_block_supports() WP Block Supports::apply block supports code WP 6.9.1
public function apply_block_supports() {
$block_type = WP_Block_Type_Registry::get_instance()->get_registered(
self::$block_to_render['blockName']
);
// If no render_callback, assume styles have been previously handled.
if ( ! $block_type || empty( $block_type ) ) {
return array();
}
$block_attributes = array_key_exists( 'attrs', self::$block_to_render ) && is_array( self::$block_to_render['attrs'] )
? $block_type->prepare_attributes_for_render( self::$block_to_render['attrs'] )
: array();
$output = array();
foreach ( $this->block_supports as $block_support_config ) {
if ( ! isset( $block_support_config['apply'] ) ) {
continue;
}
$new_attributes = call_user_func(
$block_support_config['apply'],
$block_type,
$block_attributes
);
if ( ! empty( $new_attributes ) ) {
foreach ( $new_attributes as $attribute_name => $attribute_value ) {
if ( empty( $output[ $attribute_name ] ) ) {
$output[ $attribute_name ] = $attribute_value;
} else {
$output[ $attribute_name ] .= " $attribute_value";
}
}
}
}
return $output;
}