wellcms 插件机制分为两种,一种是 Hook,一种是 Overwrite。
Hook 就是往代码里插入代码,多个插件的代码合并插入到 hook 指定的位置,最后生成的代码存放于 tmp 目录。
wellcms 每个文件几乎都有预留的 hook 位,具体想要 hook 什么功能,就查看哪个文件。
文件 view/htm/flat.htm 包含了一个 hook index_flat_start.htm 的钩子,我们就从这里开始:
新建插件目录
plugin/
conf.json (配置文件)
icon.png (图标宽高:200*200)
my_plugin/ (插件目录)
hook/ (hook文件目录)
index_flat_start.htm (要插入的文件代码)
index_flat_start.htm 文件代码为:
<div class="row">
<div class="col-lg-12">
<h1>
Hello, my code!
</h1>
</div>
</div>
同一处钩子,多个文件进行hook,那么如何使我的文件优先hook呢?
根据 conf.json 文件 hooks_rank 配置,进行优先hook,使用方法如下:
{
"name": "插件名example",
"brief": "插件介绍example brief",
"type": "0", // 无需修改
"version": "1.0.0", // 插件版本
"software_version": "2.0.0",
"installed": 0,
"enable": 0,
"hooks_rank": {
"index_flat_start.htm":"1000",
"read_start.php":"100"
}, // 最大值优先 hook 可以同时设置多个文件优先 hook 对应的数值越大越会被优先使用
"overwrites_rank": [],
"dependencies": [] // 依赖其他插件
}
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。
各类知识收集 拥有多年CMS企业建站经验,对