在ECSHOP首页再增加一个浏览排行

更新时间:2016-09-05 点击量:1579

最近有看到朋友在ecshop论坛里提问:

 

如何在首页增加一个类似于“销售排行榜”的“浏览排行榜”,

并且可以在后台的“模板设置”里进行控制。

 

由于系统默认是没有读取浏览排行的,所以这部分功能既得增加程序,又得增加模板

 

本教程是以ecshop2.7.2 官方默认模板为例进行讲解的。

 


 

1)、将下面代码复制并保存到

 

一个新文件中,文件路径为:

/themes/default/library/top10_click.lbi  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<div class="box"> 
 <div class="box_2"> 
   <h3><span>

浏览排行

</span></h3> 
  <div class="top10List clearfix"> 
  <!-- {foreach name=top_goods from=$top_goods_click item=goods}--> 
  <ul class="clearfix"> 
 <img src="../images/top_{$smarty.foreach.top_goods.iteration}.gif" 
class="iteration" /> 
 <!-- {if $smarty.foreach.top_goods.iteration<4}--> 
      <li class="topimg"> 
      <a href="{$goods.url}"><img src="{$goods.thumb}" 
alt="{$goods.name|escape:html}" class="samllimg" /></a> 
      </li> 
 <!-- {/if} -->   
      <li {if $smarty.foreach.top_goods.iteration<4}class="iteration1"{/if}> 
      <a href="{$goods.url}" 
title="{$goods.name|escape:html}">{$goods.short_name}</a><br /> 
      {$lang.shop_price}<font class="f1">{$goods.price}</font><br /> 
      </li> 
    </ul> 
  <!-- {/foreach} --></div></div></div> 
<div class="blank5"></div>

2)、修改/includes/lib_goods.php 文件

 

在最下面增加一个函数

 

/*** 

调用浏览排行榜* @access public*@return  array*/ 

function get_top10_click() 
{ 
 $sql="SELECT goods_id, goods_name, shop_price, goods_thumb " . 
           'FROM ' . $GLOBALS['ecs']->table('goods')." where is_on_sale = 1 AND 
is_alone_sale = 1 AND is_delete = 0 order by click_count desc limit 10"; 
 $arr = $GLOBALS['db']->getAll($sql); 
    for ($i = 0, $count = count($arr); $i < $count; $i++) 
    { 
        $arr[$i]['short_name'] = $GLOBALS['_CFG']['goods_name_length'] > 0 ? 
                                    sub_str($arr[$i]['goods_name'], 
$GLOBALS['_CFG']['goods_name_length']) : $arr[$i]['goods_name']; 
        $arr[$i]['url']        = build_uri('goods', array('gid' => 
$arr[$i]['goods_id']), $arr[$i]['goods_name']); 
        $arr[$i]['thumb'] = get_image_path($arr[$i]['goods_id'], 
$arr[$i]['goods_thumb'],true); 
        $arr[$i]['price'] = price_format($arr[$i]['shop_price']); 
    } 
 return $arr; 
}

 

3)、修改/index.php 文件

$smarty->assign('top_goods',get_top10());// 销售排行

 

下面另起一行增加

$smarty->assign('top_goods_click',get_top10_click());// 浏览排行

 

修改模板文件

 /themes/default/index.dwt 

找到

<!-- #BeginLibraryItem "/library/promotion_info.lbi" -->

 

在它的前面增加

<!-- #BeginLibraryItem "/library/top10_click.lbi" --><!-- #EndLibraryItem -->

 

4)、修改

 /admin/includes/lib_template.php 

文件

 

在'

/library/invoice_query.lbi' => 0,上边增加一行代码'/library/top10_click.lbi' => 0,

 

5)、继续修改语言包文件

 /languages/zh_cn/admin/template.php

$_LANG['template_libs']['top10'] = '销售排行';

下边增加一行代码

$_LANG['template_libs']['top10_click']='浏览排行';

 

6)、修改/themes/default/lib.xml文件

 

找到

<lib>top10</lib>

并且在它下面另起一行,增加

<lib>top10_click</lib>

 

7)、最后进入后台》模板管理》设置模板,是不是看到了期待已久的“浏览排行”,设置一下,并清除缓存,就OK了


支付宝扫码打赏 微信打赏

如果文章对您有帮助,就打赏一个吧

在线客服

客户服务

热线电话:

13128985956 服务时间:

周一到周六:9:00-18:00

在线QQ客服

在线微信客服

关于我们 常见问题

支付方式 加盟合作

提交需求
优惠红包 购物车0 反馈留言 返回顶部