×
  官方微博: 腾讯   新浪
ECSHOP模板 
食品保健 家居化妆 家电数码 综合通用 珠宝配饰
VIP免费模板 
家居化妆 综合通用 服装饰品 食品保健 家电数码
ECSHOP插件 
ECSHOP插件 SHOPEX插件
EC教程中心
安装使用网店运营
首页 > 二次开发教程 > ecshop 商品列表页面增加按销售 销量排行

帮助目录

有问必答

您可以加入我们的官方QQ群。

加入官方QQ群

可以将问题或建议反馈给我们。

提交在线客服

猜您感兴趣

ecshop 商品列表页面增加按销售 销量排行

网站开发中心/ 2015-01-23/ 关注人气:1180

商品列表页面的按上架时间价格、更新时间是默认的,现在需要添加的是按销量排行,但是在商品表里面没有销量的字段,这样的话,必须二次开发才可以解决现在ECSHOP网站开发中心官方技术分享给大家。

STEP1:在表“ecs_goods”添加字段:salesnum(注:自定义字段名)方法:alter table `ecs_goods` ADD `salesnum` int(11) NOT NULL DEFAULT 0;

STEP2:打开根目录文件:flow.php

找到下面的代码

    /* 插入订单商品 */
        $sql = “INSERT INTO ” . $ecs->table(’order_goods’) . “( ” .
                    “order_id, goods_id, goods_name, goods_sn, product_id, goods_number, market_price, “.
                    “goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, goods_attr_id) “.
                ” SELECT ‘$new_order_id’, goods_id, goods_name, goods_sn, product_id, goods_number, market_price, “.
                    “goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, goods_attr_id”.
                ” FROM ” .$ecs->table(’cart’) .
                ” WHERE session_id = ‘”.SESS_ID.”‘ AND rec_type = ‘$flow_type’”;
        $db->query($sql);

在这段代码的下面,添加如下代码:

    /* 插入商品表的salesnum 字段,统计销量排行 */
     $sql = “update ” . $ecs->table(’goods’) . ” set salesnum=salesnum +”.
       ” (SELECT goods_number”.
                ” FROM ” .$ecs->table(’cart’) .
                ” WHERE session_id = ‘”.SESS_ID.”‘ AND rec_type = ‘$flow_type’) where goods_id=”.
       ” (SELECT goods_id”.
                ” FROM ” .$ecs->table(’cart’) .
                ” WHERE session_id = ‘”.SESS_ID.”‘ AND rec_type = ‘$flow_type’)”;
     $db->query($sql);

STEP3:打开文件:default\library\goods_list.lbi,找到下面的代码:

    <a href=”category.php?category={$category}&display={$pager.display}&brand={$brand_id}&price_min={$price_min}&price_max={$price_max}&filter_attr={$filter_attr}&page={$pager.page}&sort=last_update&order=<!– {if $pager.sort == ‘last_update’ && $pager.order == ‘DESC’} –>ASC<!– {else} –>DESC<!– {/if} –>#goods_list”><img src=”images/last_update_<!– {if $pager.sort == ‘last_update’} –>{$pager.order}<!– {else} –>default<!– {/if} –>.gif” alt=”{$lang.sort.last_update}”></a>

在上面那段代码的下面添加:

    <a href=”category.php?category={$category}&display={$pager.display}&brand={$brand_id}&price_min={$price_min}&price_max={$price_max}&filter_attr={$filter_attr}&page={$pager.page}&sort=salesnum&order=<!– {if $pager.sort == ’salesnum’ && $pager.order == ‘DESC’} –>ASC<!– {else} –>DESC<!– {/if} –>#goods_list”><img src=”images/sales_<!– {if $pager.sort == ’salesnum’} –>{$pager.order}<!– {else} –>default<!– {/if} –>.gif” alt=”按销量排行”></a>

两段代码的区别,自己去分析看看吧。

STEP4:打开文件:category.php,找到如下代码:

    $sort  = (isset($_REQUEST['sort'])  && in_array(trim(strtolower($_REQUEST['sort'])), array(’goods_id’, ’shop_price’, ‘last_update’)))

    修改为:

    $sort  = (isset($_REQUEST['sort'])  && in_array(trim(strtolower($_REQUEST['sort'])), array(’goods_id’, ’shop_price’, ‘last_update’,’salesnum’)))

OK!就是如此之简单。 

分享到:
下一篇:二次开发用excel导出ecshop订阅邮件
上一篇:ECSHOP商品列表页显示每个商品的评论等级、评论数量、点击量、销售量!