跳转到内容

标签或碎片的一些注意事项

首先拿底部菜单做个举例吧,底部菜单设置后,一般情况所有界面都是一样的。要想某些页面不一样,比如论坛详情页或者是商品详情页不一样的话,就需要在相应的模板中单独的添加底部菜单碎片,如下图所示。 img

上面图中CMS的内容页就特意单独的加上了底部菜单碎片index_style/default/index/footmenu 加了之后,就需要把系统布局的底部菜单碎片清空掉,通过这个代码实现的 {block name="body_Footcont"} {/block} 另外,也可以通过复制系统布局模板底部菜单那个碎片过来

{block name="body_Footcont"}
{qb:hy name="wap_layout_002" where="index_style/default/index/footmenu" val="datas" type="labelmodel"}
{$datas}
{/qb:hy}
{/block}

复制过来之后,必须要把 wap_layout_002改一下名字,因为标签不允许出现雷同的标签名,否则会冲突导致不生效。

通过上面的办法,就可以实现当前的页面可以重新定义底部菜单。

再次强调,标签中的名字是不能雷同的,否则就会冲突不生效,但qb:tag 标签与 qb:hy标签的名字有雷同就没问题,因为他们是独立的。qb:hy 可以用在圈子标签设置,qb:tag不能用于圈子标签设置。 碎片的固定格式如下:

{qb:hy name="标签名" where="碎片路径" val="datas" type="labelmodel"}
{$datas}
{/qb:hy}

上面添加碎片标签的话,就只能使用 qb:hy 大部分时候, qb:hy可以替换qb:tag使用 但某些特殊场合,比如不同的模板碎片,想要同样的设置参数的时候,就可以在不同的碎片模板里边使用 qb:tag 可以达到调用相同的内容,如下图所示

img

通过上面的例子,大家可以发现对于qb:tag标签来说,即使在不同的模板里边,只要标签名相同,他设置的内容也是一样的。有些场合就想要实现这样的效果。

对于底部菜单来说,同样一个碎片模板\template\index_style\default\index\footmenu.htm 在不同的页面里边被当作碎片引用的时候,他的设置参数却不一样,那里因为他里边用的是 qb:hy 标签,如下图所示 img

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

img 最后做个总结

qb:tag是为了满足不同模板里边,有时候就想调用相同的设置, 只要设置标签名一样,就可以实现. 而qb:hy就不能实现这个功能

qb:hy 却可以实现,同样一个碎片,比如底部菜单, 可以被不同的页面以碎片的形式调用,却可以设置不同的内容

所以这就是关键的区别之外.