Ich versuche, eine Klasse zur Liste von Blöcken ( core/list
) in Gutenberg hinzuzufügen . Leider sieht es so aus, als ob einige Blöcke wie Listen und Absätze nicht den Standardnamen der Standardklasse haben und wp-block-{name}
nicht mit dem blocks.getBlockDefaultClassName
Filter umbenannt werden können .
Um das zu umgehen, habe ich den blocks.getSaveContent.extraProps
Filter verwendet, der es mir zu ermöglichen scheint, ALLEN Blöcken, die noch keine Klassen haben, eine Klasse hinzuzufügen. Der folgende Code zeigt, wie ich das zum Laufen gebracht habe. Es fügt added-class-name
Blöcke wie Listen und Absätze usw. hinzu.
function addBlockClassName( className ) {
return Object.assign( className, { class: 'added-class-name' } );
}
wp.hooks.addFilter(
'blocks.getSaveContent.extraProps',
'gdt-guten-plugin/add-block-class-name',
addBlockClassName
);
Und ich stelle es so ein:
function gdt_blocks_class_rename() {
wp_enqueue_script(
'gdt-plugin-blacklist-blocks',
get_stylesheet_directory_uri() . '/dist/guten-addons.js',
array( 'wp-blocks' )
);
}
add_action( 'enqueue_block_editor_assets', 'gdt_blocks_class_rename' );
Was ich jedoch tun möchte, ist, NUR Listenblöcken eine Klasse hinzuzufügen ? Kann das überhaupt gemacht werden?
quelle
class: 'wp-block-list'
seinclassName: 'wp-block-list'
? Außerdem gibt es jetzt einenblocks.getBlockDefaultClassName
Filter. @see developer.wordpress.org/block-editor/developers/filters/…