wpseek.com
WordPress开发者和主题制作者的搜索引擎
_wp_add_block_level_presets_class is private and should not be used in themes or plugins directly.
_wp_add_block_level_presets_class › WordPress Function
Since6.2.0
已弃用n/a
› _wp_add_block_level_presets_class ( $block_content, $block )
| 访问: |
|
| 参数: (2) |
|
| 返回: |
|
| 定义在: |
|
| 文档: |
Update the block content with block level presets class name.
源码
function _wp_add_block_level_presets_class( $block_content, $block ) {
if ( ! $block_content ) {
return $block_content;
}
// return early if the block doesn't have support for settings.
$block_type = WP_Block_Type_Registry::get_instance()->get_registered( $block['blockName'] );
if ( ! block_has_support( $block_type, '__experimentalSettings', false ) ) {
return $block_content;
}
// return early if no settings are found on the block attributes.
$block_settings = $block['attrs']['settings'] ?? null;
if ( empty( $block_settings ) ) {
return $block_content;
}
// Like the layout hook this assumes the hook only applies to blocks with a single wrapper.
// Add the class name to the first element, presuming it's the wrapper, if it exists.
$tags = new WP_HTML_Tag_Processor( $block_content );
if ( $tags->next_tag() ) {
$tags->add_class( _wp_get_presets_class_name( $block ) );
}
return $tags->get_updated_html();
}