使用碎片模板他涉及到主模板与碎片子模板。 ***** 重要提示: 制作碎片模块,请尽量忘记 `qb:tag` 全部使用 `qb:hy` 否则你容易混乱,他们的使用方法是一样的 ***** 下面的图片就是主模板,比如是网站主页或者列表页或者是内容页等等。他必须使用 `qb:hy`标签来引入碎片子模板 `type="labelmodel"` 是告诉系统标签我要引入碎片子模板 `where="index_style/default/index/index_mod/rollpic,index_style/default/index/index_mod/head_menu" ` 这个参数就告诉系统,我要使用哪些碎片子模板,一般是私有子模板(路径可随意,但必须指定详细的路径),也可以是公共子模板,公共子模板也要指定详细路径,无论是公共还是私人模板,都不需要`.htm`后缀。模板虽然要详细路径,但不要加上`/template/` `val="datas"` 这个参数是固定的,因为标签里边要用到。 子模板就是一个普通的标签模板,里边也可以没标签。没有特别的要求。随便一个页面都可以当子模板使用,没任何求。 对于私有模板,最好在头部加一段注释说明这个是什么功能的模板,当然也可以不加。 [![](https://img.kancloud.cn/2a/71/2a711312198e999b3717d0b7bacab45c_1426x732.png)](https://img.kancloud.cn/2a/71/2a711312198e999b3717d0b7bacab45c_1426x732.png) 代码如下图,把下面的代码放在模板中去,就代表使用模块碎片化功能了。同一个页面可以放多个,WAP可能用不到,PC就会用到,比如1200像素一个,800像素的左边栏一个。400像素的右边栏一个 ~~~ {qb:hy name="wap_index_model" where="index_style/default/index/index_mod/rollpic,index_style/default/index/index_mod/head_menu" val="datas" type="labelmodel"} {$datas} {/qb:hy} ~~~ `where`参数指定了默认的模板,仅仅是推荐给用户使用而已,用户还可以随意删除或添加其它的模板,当然也可以复制。也可以重新排序。所以`where`仅仅是给开发者对用户使用碎片模板的一个推荐而已。 公共模板是可以随意选择的。你也可以做很多私有模板给用户备选,而不用全部一起加载出来。 要想私用模板可供用户备选,但又不想在`where`参数里边默认加载显示的话,你只需要在当前目录给他命名的文件名是`model_`开头即可。这个时候`where`参数里边的第一个子模板路径必须跟备选子模板同一个目录。而不能是其它路径,第一个如果是公共子模板,那没影响。 [![](https://img.kancloud.cn/90/dd/90dd4d0897a3f300d5eab21c0333a7f4_1541x836.png)](https://img.kancloud.cn/90/dd/90dd4d0897a3f300d5eab21c0333a7f4_1541x836.png) [![](https://img.kancloud.cn/cb/ee/cbee9c96e334ac62fb827276b9396ec3_1432x836.png)](https://img.kancloud.cn/cb/ee/cbee9c96e334ac62fb827276b9396ec3_1432x836.png) [![](https://img.kancloud.cn/66/c3/66c370f2d4617175fab709a6c92befe5_1544x995.png)](https://img.kancloud.cn/66/c3/66c370f2d4617175fab709a6c92befe5_1544x995.png) 子模块就是普通的标签模板,里边也可以不放标签代码。不放的话,用户就不能修改里边的内容而已。 目录可以跟当前的主模板同一个目录,如果太多的话, 也可以给他一个子目录。 子模板你可以做多一点给用户备选,默认不用全放进去。这个时候就需要子模块的文件名必须是`model_`开头,并且要保证备选的模板与当前设置的第一个子模板同一个目录(注意是第一个,系统只认第一个,逗号后面的其它路径不受影响)。