我已经限制了一些默认的核心古腾堡块,因为很多对我的客户来说都是不必要的,这只会增加新编辑器的混乱。
其结果是一些核心类别内部只有一个块,例如,“格式化”只有一个表。
是否可以编辑/删除核心块类别并移动单个类别下的所有块??
限制我的区块;
add_filter( \'allowed_block_types\', \'res_allowed_block_types\' );
function res_allowed_block_types( $allowed_blocks ) {
return array(
\'core/image\',
\'core/paragraph\',
\'core/heading\',
\'core/list\',
\'core/quote\',
\'core/cover-image\',
\'core/file\',
\'core/video\',
\'core/table\',
\'core/separator\',
);
}
SO网友:jrmd
虽然我不确定如何在php中实现这一点,但在javascript中,您可以通过挂接到blocks.registerBlockType
钩
下面是一个小示例,它是如何工作的,尽管我建议使用lodash来深度克隆settings对象,以保持一切不变。
const rearrangeBlockCategories = {
\'core/table\': \'common\',
};
wp.hooks.addFilter(\'blocks.registerBlockType\', \'[namespace]\', (settings, name) => {
if (rearrangeBlockCategories[name]) {
settings.category = rearrangeBlockCategories[name];
}
return settings;
});