ecshop首页增加倒计时列表

看到不少朋友在找首页特价商品倒计时的修改方法,写了这篇文章希望能帮到有此需要的朋友们

ecshop首页增加倒计时列表

1、首先修改程序部分
打开includes/lib_goods.php
找到get_promote_goods()函数部分

$goods[$idx]['url'] = build_uri('goods', array('gid' => $row['goods_id']), $row['goods_name']);

注:这里一定要谨慎,一定要找准位置,很多同志都是绊倒在这里的,如果你没修改过这个文件的话,大概是在394行的位置,找错了就出不来了)
下面增加代码

$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 * 1000

var hoursms = 60 * 60 * 1000

var Secondms = 60 * 1000

var microsecond = 1000

var DifferHour = -1

var DifferMinute = -1

var DifferSecond = -1

function 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里即可。

原文来自:http://blog.sina.com.cn/s/blog_61af441401016q5n.html

 

还有一些教程比如:

http://xaphp.com/portal.php?mod=view&aid=532

 

 

你可能感兴趣的:(ecshop)