你说得对。我以前没注意到!
如果查看代码,您可以看到小部件现在显示在/wp-includes/widgets/class-wp-widget-block.php
它扩展了/wp-includes/class-wp-widget.php
第一个文件是WP 5.8中引入的新文件。在那里,您可以看到小部件现在通过widget_block_content
使用do_blocks()
功能(/wp-includes/blocks.php
)
我不知道这是否是一个问题,但您可以使用上面描述的这个新挂钩,如下所示:
function my_widget_block_content($content) {
$replacements = [
\'<h2>\' => \'<div class="h1">\',
\'</h2>\' => \'</div>\',
];
$content = str_replace(array_keys($replacements), $replacements, $content);
return $content;
}
add_filter(\'widget_block_content\', \'my_widget_block_content\');
我希望它会改变,因为
str_replace()
函数用于小部件的整个内容,如果您使用的是所见即所得,并且您在其中写入了un标题2,那么它也将被替换:(