有人知道是否可以从gutenberg的核心块中删除一些默认面板吗?
我特别想到的是调色板面板(仅在某些块上,比如我不希望用户能够更改按钮上的颜色(。或按钮边框半径。。。与芯/盖的高度相同。
我几乎尝试了我能想到的一切,不知道是否必须为这些小的更改创建自己的自定义块。
我试着用一些运气来改变块settings.supports
对象。。。我之所以这么说,是因为我没能完全删除我想要的所有面板,但我确实删除了像这样的颜色和排版面板。
参考链接
- WP块参考
import assign from "lodash.assign";
import { addFilter } from "@wordpress/hooks";
const extendOnBlocks = ["core/button"]; // replace with ["core/cover"]
const removeBlockPanels = (settings, name) => {
// Do nothing if it's another block than our defined ones.
if (!extendOnBlocks.includes(name)) {
return settings;
}
// Use Lodash's assign to gracefully handle if attributes are undefined
settings.supports = assign(settings.supports, {
__experimentalBorder: false,
typography: false,
color: false,
});
return settings;
};
addFilter(
"blocks.registerBlockType",
"my-button/attribute/options",
removeBlockPanels
);