
上面图中CMS的内容页就特意单独的加上了底部菜单碎片`index_style/default/index/footmenu` 加了之后,就需要把系统布局的底部菜单碎片清空掉,通过这个代码实现的 `{block name="body_Footcont {/block}`
另外,也可以通过复制系统布局模板底部菜单那个碎片过来
{block name="body_Footcont\r
{qb:hy name="wap_layout_002" where="index_style/default/index/footmenu" val="datas" type="labelmodel\r
{$datas}r
{/qb:hy}r
{/block}
复制过来之后,必须要把 `wap_layout_002`改一下名字,因为标签不允许出现雷同的标签名,否则会冲突导致不生效。
通过上面的办法,就可以实现当前的页面可以重新定义底部菜单。
> 再次强调,标签中的名字是不能雷同的,否则就会冲突不生效,但qb:tag 标签与 qb:hy标签的名字有雷同就没问题,因为他们是独立的。qb:hy 可以用在圈子标签设置,qb:tag不能用于圈子标签设置。
>碎片的固定格式如下:
{qb:hy name="标签名" where="碎片路径" val="datas" type="labelmodel\r
{$datas}r
{/qb:hy}
上面添加碎片标签的话,就只能使用 `qb:hy`
大部分时候, `qb:hy`可以替换`qb:tag`使用
但某些特殊场合,比如不同的模板碎片,想要同样的设置参数的时候,就可以在不同的碎片模板里边使用 `qb:tag` 可以达到调用相同的内容,如下图所示

通过上面的例子,大家可以发现对于`qb:tag`标签来说,即使在不同的模板里边,只要标签名相同,他设置的内容也是一样的。有些场合就想要实现这样的效果。
对于底部菜单来说,同样一个碎片模板`templateindex_styledefaultindexfootmenu.htm` 在不同的页面里边被当作碎片引用的时候,他的设置参数却不一样,那里因为他里边用的是 `qb:hy` 标签,如下图所示

-----
大家可以再对比看看底部菜单的碎片设置
-----

最后做个总结
qb:tag是为了满足不同模板里边,有时候就想调用相同的设置, 只要设置标签名一样,就可以实现. 而qb:hy就不能实现这个功能
qb:hy 却可以实现,同样一个碎片,比如底部菜单, 可以被不同的页面以碎片的形式调用,却可以设置不同的内容
所以这就是关键的区别之外.
,



