欢迎光临一流素材网,免积分免费素材下载!
当前位置:首页 > 教程 > CMS教程>Ecshop

ECSHOP首页促销商品增加倒计时效果

所属栏目:Ecshop更新时间:2015-06-09 来源:网络 原作者:不详 发布:deepdfhy浏览:0

免费开源可商用的PHP万能建站程序-DiYunCMS(帝云CMS)

通过本教程p关现ecshop倒计时促销插件,其实很简单,一流资源网在这里共享一下使用方法!

在ECSHOP首页今日特价(促销商品)增加倒计时效

教程开始:

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


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

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

下面增加代码

/* 促销时间倒计时 */
        $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} -->

在后台商品也设置促销商品,刷新首页即可看到效果!

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

其实道理都是相通的。


标签:
收藏 0 有帮助 0 没帮助 0 打赏 0
相关教程
给个评价吧