ecshop 首页调用多个促销,显示到计时

1、首先修改程序部分打开includes/lib_goods.php找到get_promote_goods()函数部分在 $goods[$idx][‘url’] = build_uri(‘goods’, array(‘gid’ => $row[‘goods_id’]), $row[‘goods_name’]);

下面增加代码

/* 促销时间倒计时 */ $time = gmtime(); if ($time >= $row[‘promote_start_date’] && $time <= $row[‘promote_end_date’]) { $goods[$idx][‘gmt_end_time’] = local_date(‘M d, Y H:i:s’,$row[‘promote_end_date’]); } else { $goods[$idx][‘gmt_end_time’] = 0; }

2、然后将 library/recommend_promotion.lbi全部替换为下面代码:

<meta http-equiv="Content-Type" content="text/html; charset=gbk"><!– {if $promotion_goods} –><script >var Tday = new Array();var daysms = 24 * 60 * 60 * 1000var hoursms = 60 * 60 * 1000var Secondms = 60 * 1000var microsecond = 1000var DifferHour = -1var DifferMinute = -1var DifferSecond = -1function clock(key){ var time = new Date() var hour = time.getHours() var minute = time.getMinutes() var second = time.getSeconds() var timevalue = ""+((hour > 12) ? hour-12:hour) timevalue +=((minute < 10) ? ":0":":")+minute timevalue +=((second < 10) ? ":0":":")+second timevalue +=((hour >12 ) ? " PM":" AM") var convertHour = DifferHour var convertMinute = DifferMinute var convertSecond = DifferSecond var Diffms = Tday[key].getTime() – time.getTime() DifferHour = Math.floor(Diffms / daysms) Diffms -= DifferHour * daysms DifferMinute = Math.floor(Diffms / hoursms) Diffms -= DifferMinute * hoursms DifferSecond = Math.floor(Diffms / Secondms) Diffms -= DifferSecond * Secondms var dSecs = Math.floor(Diffms / microsecond) if(convertHour != DifferHour) a="<font color=red>"+DifferHour+"</font>天"; if(convertMinute != DifferMinute) b="<font color=red>"+DifferMinute+"</font>时"; if(convertSecond != DifferSecond) c="<font color=red>"+DifferSecond+"</font>分" d="<font color=red>"+dSecs+"</font>秒" if (DifferHour>0) {a=a} else {a=”} document.getElementById("leftTime"+key).innerHTML = a + b + c + d; //显示倒计时信息}</script><div id="sales" class="f_l clearfix"> <h1><a href="../search.php?intro=promotion"><img src="images/more.gif" /></a></h1> <div class="clearfix goodBox"> <!–{foreach from=$promotion_goods key=key item=goods name="promotion_foreach"}–> {if $smarty.foreach.promotion_foreach.index <= 3} <div class="goodList"> <a href="{$goods.url}"><img src="{$goods.thumb}" border="0" alt="{$goods.name|escape:html}"/></a><br /> <p><a href="{$goods.url}" title="{$goods.name|escape:html}">{$goods.short_name|escape:html}</a></p> {$lang.promote_price}<font class="f1">{$goods.promote_price}</font><br><font class="f4" id="leftTime{$key}">{$lang.please_waiting}</font> </div> {/if}<script>Tday[{$key}] = new Date("{$goods.gmt_end_time}"); window.setInterval(function() {clock({$key});}, 1000); </script> <!–{/foreach}–> </div> </div> <!– {/if} –>

以上方法是在官方默认模板下实现的,如果你的是其他模板,有选择的把里面的一些代码挑出来增加(或修改)到你的recommend_promotion.lbi里即可。

失败是什么?没有什么,只是更走近成功一步;

ecshop 首页调用多个促销,显示到计时

相关文章:

你感兴趣的文章:

标签云: