Wordpress 禁用";代码编辑器“;对于角色,例如作者
我被要求在WordPress Gutenberg编辑器中禁用“代码编辑器”和“编辑为HTML”功能 不幸的是,我无法在谷歌(谢谢,经典编辑帖子…)或wp.org开发者参考中找到任何解决方案 我的第一次尝试是使用筛选代码编辑器菜单项,但可能的参数似乎不适合WP版本5* 对这两种情况中的一种有什么想法吗?要对网站上的所有块禁用“编辑为HTML”选项,您需要设置Webpack和所有有趣的东西。如果不想自己设置,可以使用creategutenblock来启动项目 然后,在您的Wordpress 禁用";代码编辑器“;对于角色,例如作者,wordpress,wordpress-gutenberg,Wordpress,Wordpress Gutenberg,我被要求在WordPress Gutenberg编辑器中禁用“代码编辑器”和“编辑为HTML”功能 不幸的是,我无法在谷歌(谢谢,经典编辑帖子…)或wp.org开发者参考中找到任何解决方案 我的第一次尝试是使用筛选代码编辑器菜单项,但可能的参数似乎不适合WP版本5* 对这两种情况中的一种有什么想法吗?要对网站上的所有块禁用“编辑为HTML”选项,您需要设置Webpack和所有有趣的东西。如果不想自己设置,可以使用creategutenblock来启动项目 然后,在您的block.js文件(或您为
block.js
文件(或您为编辑器设置的任何自定义js文件)中,您只需要几行代码。使用registerBlockType
过滤器在注册时正确更改所有块,这将允许您根据需要禁用“作为HTML编辑”以及其他功能(如自定义类名)
// Use WP Hooks
const { addFilter } = wp.hooks;
// Create the filter
addFilter(
"blocks.registerBlockType", // Using the registerBlockType hook
"cgb/change-core-blocks", // Custom namespace, slash, name for your filter
changeCoreBlocks // The name of your custom function
);
function changeCoreBlocks( settings, name ) {
// This will fire for all blocks - from Core, plugins, and themes
settings.supports = Object.assign({}, settings.supports, {
// Setting "html" to false disables the "Edit as HTML" functionality
html: false
});
}
在旧的JavaScript中,可能有一种方法可以做到这一点,它不需要您设置Webpack或使用Create Guten Block,因为运行这个简单的过滤器似乎相当复杂。要禁用站点上所有块的“编辑为HTML”选项,您需要设置Webpack和所有有趣的事情。如果不想自己设置,可以使用creategutenblock来启动项目
然后,在您的block.js
文件(或您为编辑器设置的任何自定义js文件)中,您只需要几行代码。使用registerBlockType
过滤器在注册时正确更改所有块,这将允许您根据需要禁用“作为HTML编辑”以及其他功能(如自定义类名)
// Use WP Hooks
const { addFilter } = wp.hooks;
// Create the filter
addFilter(
"blocks.registerBlockType", // Using the registerBlockType hook
"cgb/change-core-blocks", // Custom namespace, slash, name for your filter
changeCoreBlocks // The name of your custom function
);
function changeCoreBlocks( settings, name ) {
// This will fire for all blocks - from Core, plugins, and themes
settings.supports = Object.assign({}, settings.supports, {
// Setting "html" to false disables the "Edit as HTML" functionality
html: false
});
}
在旧的JavaScript中,可能有一种方法可以做到这一点,它不需要您设置Webpack或使用Create Guten Block,因为运行这个简单的过滤器似乎相当复杂。您所说的代码编辑器是什么意思?你是说代码块吗?你说的代码编辑器是什么意思?你是说代码块吗?