在nv-plugins中新建 block-example 文件夹,并在这个文件夹中以插件形式开发一个block示例。
插件配置文件:
block-example/plugin.json
{
"name": "nvPress3.0区块编辑器自定义示例",
"url": "",
"description": "在文章编辑器中新增一个块,允许输入自定义内容,以及一个innerblock嵌套。保存后在前台显示出来",
"version": "1.0.0",
"author": "PANDA Studio",
"author_url": ""
}
功能文件:
首先需要新建一个文件夹(block-example/public_srcs),把这个文件夹暴露为静态地址,这样在后台才能读取到它:
block-example/function.js
var path = require("path")
add_action('init_express',()=>{
register_static_url('/pandastudio-sample-block-srcs/', path.join(__dirname,"./public_srcs/") );
});
接下来block-example/public_srcs
文件夹就可以用/pandastudio-sample-block-srcs/
url访问了,在它下面创建一个block-admin-register.js
文件,并且把url地址添加为注册blocks的地址,这样每次编辑器加载的时候,都会执行一次这个文件export的方法。
block-example/function.js
register_blocks('/pandastudio-sample-block-srcs/block-admin-register.js');
block-example/public_srcs/block-admin-register.js
export default ({post_type, post_id})=>{
// 每次编辑器加载的时候,都会执行一次这个文件export的方法
// 方法会接受一个参数,里面包含 post_type 和post_id(新增无id),如果用得到的话,可以用
console.log('Block注册脚本调用成功!',post_type, post_id)
}
接下来,启用这个插件后,在后台编辑器的F12中可以看到这个方法被执行了。
在下一节中,将继续讲述如何在这个方法中注册块