destoon b2b教程之调用指定itemid的商品信息且使用自定义图片

分类栏目:destoon实战

130

那就是:“将代码分为三块,起始部分(模板标签调用)、中间部分(指定图片)、结尾部分(模板标签调用)、”。剖析图:

destoon标签模板调用商品信息

虽然每实现一个图片要3行代码,但相比而言,已经很完美了。每次修改时只需要修改图片的src即可。其它什么标题、价格、促销价、销量、评分等数据均是动态调用,是不是很节省时间?还是一起来看下最终的代码吧。

修改标签代码

<!--用一个外包封装,便于整体移动-->

<div>

<!--起始部分-->

<!--{tag("moduleid=16&condition=status=3 and itemid='6895'&template=tbjj_1")}-->

<!--指定图片-->

<img data-original="/file/upload/img151109/katong_06.jpg">

<!--结束部分(包括标题、价格、促销价、销量、评分等)-->

<!--{tag("moduleid=16&condition=status=3 and itemid='6895'&template=tbjj_1_1")}-->

......

</div>

<!--简注:黄色高亮表示商品id号,红色高亮表示对应的模板名称-->

上面的代码中提到了两个模板,接下来我们来看下模板里面的代码吧。

二、标签模板源码

tbjj_1,起始标签

{loop $tags $i $t}

<dl>

<dt>

<a href="{$t[linkurl]}" target="_blank">

{/loop}

tbjj_1_1,结束标签

{loop $tags $i $t}

</a>

</dt>

<dd>

<a href="{$t[linkurl]}" title="{$t[alt]}" target="_blank">{$t[title]}</a>

<p>

<span>销售:<em>{$t[sales]}</em>件</span>

<span>¥{$t[price]}</span>

</p>

</dd>

</dl>

{/loop}

至此,大功已告成!但在使用过程中却发现存在问题:如果产品已下架,此时模板tbjj_1和tbjj_1_1不能成功调用标签。如图:很显然,这是不行的!由于模板不能调用,也就意味着对应的图片失去了css样式,所以这个问题必须得解决才行。

五、代码升级(包含已下架等非通过条件)

不知道有没有看官注意这个条件:status=3。如果看官不知道这个条件的意思,我们可以在数据字典中找到答案。如图:此时我们已经知道了status表示状态且有5个取值,分别为:0为回收站,1为未通过,2为待审核,3为已通过,4为已过期。

除了已通过条件外,还要将库存也加进去,毕竟有时候库存会被突然拍完。通过查看数据字典,我们知道了amount是我们要找的供货总量,也就是所谓的库存。接下来,我们来实现一个小判断吧:如果商品已通过,则正常显示,否则提示已下架等字样。下面开始改造代码。

tbjj_1_1,修改结束标签

{loop $tags $i $t}

</a>

</dt>

<!--这里加一个判断条件,有库存且已通过时执行-->

{if $t[status] == 3 && $t[amount] > 0}

<dd>

<a href="{$t[linkurl]}" title="{$t[alt]}" target="_blank">{$t[title]}</a>

<p>

<span>销售:<em>{$t[sales]}</em>件</span>

<span>¥{$t[price]}</span>

</p>

<!--其它情况时执行-->

{else}

<dd>已下架(提示文本可自己修改)

{/if}

</dd>

</dl>

{/loop}

现在再来看下最终的源码效果吧,如图:

不知道哪位大大还有更好的方法......