您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop商品销量后台添加虚拟销量以及前台显示商品已销售销量
高季晨2024-01-16Ecshop商城教程已有人查阅
导读使用ECSHOP做网站时,有个苦恼,就是推广前期,商城销量很少,要是能够显示一个假的销量就好了。通过本教程就可以实现。教程开始1.在sq执行语句ALTER
使用ECSHOP做网站时,有个苦恼,就是推广前期,商城销量很少,要是能够显示一个假的销量就好了。
通过本教程就可以实现。
教程开始
1.在sq执行语句
ALTER TABLE `ecs_goods` ADD `sales_volume_base` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0'
INSERT INTO `ecs_shop_config` (`parent_id`, `code`, `type`, `store_range`, `store_dir`, `value`, `sort_order` ) VALUES ('7','show_goods_sales', 'select', '1,0', '', '1', '1');
INSERT INTO `ecs_shop_config` (`parent_id`, `code`, `type`, `store_range`, `store_dir`, `value`, `sort_order` ) VALUES ('3', 'show_sales_type', 'select', '1,0', '', '1', '1');
注意:如果你的数据表前缀不是‘ecs_’ 请自行修改
2./admin/includes/lib_goods.php中
$sql = "SELECT goods_id, goods_name, goods_type, goods_sn, shop_price, is_on_sale, is_best, is_new, is_hot, sort_order, goods_number, integral, " . " (promote_price > 0 AND promote_start_date <= '$today' AND promote_end_date >= '$today') AS is_promote ". " FROM " . $GLOBALS['ecs']->table('goods') . " AS g WHERE is_delete='$is_delete' $where" . " ORDER BY $filter[sort_by] $filter[sort_order] ". " LIMIT " . $filter['start'] . ",$filter[page_size]";
修改为
$sql = "SELECT goods_id, goods_name, goods_type, goods_sn, shop_price, is_on_sale, is_best, is_new, is_hot, sort_order, goods_number, integral, sales_volume_base, " . " (promote_price > 0 AND promote_start_date <= '$today' AND promote_end_date >= '$today') AS is_promote ". " FROM " . $GLOBALS['ecs']->table('goods') . " AS g WHERE is_delete='$is_delete' $where" . " ORDER BY $filter[sort_by] $filter[sort_order] ". " LIMIT " . $filter['start'] . ",$filter[page_size]";
3./admin/templates/goods_list.htm,在
{if $use_storage} <th><a href="javascript:listTable.sort('goods_number'); ">{$lang.goods_number}</a>{$sort_goods_number}</th> {/if}
后,添加
<th><a href="javascript:listTable.sort('sales_volume_base'); ">{$lang.sales_volume_base}</a>{$sort_sales_volume_base}</th>
在
{if $use_storage} <td align="right"><span onclick="listTable.edit(this, 'edit_goods_number', {$goods.goods_id})">{$goods.goods_number}</span></td> {/if}
后,添加
<td align="center"><span onclick="listTable.edit(this, 'edit_sales_volume_base', {$goods.goods_id})">{$goods.sales_volume_base}</span></td>
4./admin/goods.php,在
/** * 列表链接 * @param bool $is_add 是否添加(插入) * @param string $extension_code 虚拟商品扩展代码,实体商品为空 * @return array('href' => $href, 'text' => $text) */ function list_link($is_add = true, $extension_code = '')
前,添加
/*------------------------------------------------------ */ //-- 修改商品虚拟销量 /*------------------------------------------------------ */ elseif ($_REQUEST['act'] == 'edit_sales_volume_base') { check_authz_json('goods_manage'); $goods_id = intval($_POST['id']); $sales_volume_base = json_str_iconv(trim($_POST['val'])); if ($exc->edit("sales_volume_base = '$sales_volume_base', last_update=" .gmtime(), $goods_id)) { clear_cache_files(); make_json_result(stripslashes($sales_volume_base)); } }
5.goods.php,在
$smarty->assign('categories', get_categories_tree($goods['cat_id'])); // 分类树
后,添加
$smarty->assign('sales_count', get_sales_count($goods_id));
在末尾添加
/* 商品累计销量带自定义_新增加 */ function get_sales_count($goods_id) { /* 查询该商品的自定义销量 */ $sales_base = $GLOBALS['db']->getOne('SELECT sales_volume_base FROM '.$GLOBALS['ecs']->table('goods').' WHERE goods_id = '.$goods_id); /* 查询该商品的实际销量 */ $sql = 'SELECT IFNULL(SUM(g.goods_number), 0) ' . 'FROM ' . $GLOBALS['ecs']->table('order_info') . ' AS o, ' . $GLOBALS['ecs']->table('order_goods') . ' AS g ' . "WHERE o.order_id = g.order_id " . "AND o.order_status " . db_create_in(array(OS_CONFIRMED, OS_SPLITED)) . "AND o.shipping_status " . db_create_in(array(SS_SHIPPED, SS_RECEIVED)) . " AND o.pay_status " . db_create_in(array(PS_PAYED, PS_PAYING)) . " AND g.goods_id = '$goods_id'"; $sales_count = $GLOBALS['db']->getOne($sql); /* 商品累计销量默认显示方式 */ if ($GLOBALS['_CFG']['show_sales_type']) { $row['sales_volume_total'] = $sales_count; //实际销量 } else { $row['sales_volume_total'] = $sales_base + $sales_count; //自定义销量+实际销量 } return ($row['sales_volume_total']); }
6.在/languages/zh_cn/admin/shop_config.php,中
/languages/zh_cn/admin/shop_config.php
下,添加
通过本教程就可以实现。
教程开始
1.在sq执行语句
ALTER TABLE `ecs_goods` ADD `sales_volume_base` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0'
INSERT INTO `ecs_shop_config` (`parent_id`, `code`, `type`, `store_range`, `store_dir`, `value`, `sort_order` ) VALUES ('7','show_goods_sales', 'select', '1,0', '', '1', '1');
INSERT INTO `ecs_shop_config` (`parent_id`, `code`, `type`, `store_range`, `store_dir`, `value`, `sort_order` ) VALUES ('3', 'show_sales_type', 'select', '1,0', '', '1', '1');
注意:如果你的数据表前缀不是‘ecs_’ 请自行修改
2./admin/includes/lib_goods.php中
$sql = "SELECT goods_id, goods_name, goods_type, goods_sn, shop_price, is_on_sale, is_best, is_new, is_hot, sort_order, goods_number, integral, " . " (promote_price > 0 AND promote_start_date <= '$today' AND promote_end_date >= '$today') AS is_promote ". " FROM " . $GLOBALS['ecs']->table('goods') . " AS g WHERE is_delete='$is_delete' $where" . " ORDER BY $filter[sort_by] $filter[sort_order] ". " LIMIT " . $filter['start'] . ",$filter[page_size]";
修改为
$sql = "SELECT goods_id, goods_name, goods_type, goods_sn, shop_price, is_on_sale, is_best, is_new, is_hot, sort_order, goods_number, integral, sales_volume_base, " . " (promote_price > 0 AND promote_start_date <= '$today' AND promote_end_date >= '$today') AS is_promote ". " FROM " . $GLOBALS['ecs']->table('goods') . " AS g WHERE is_delete='$is_delete' $where" . " ORDER BY $filter[sort_by] $filter[sort_order] ". " LIMIT " . $filter['start'] . ",$filter[page_size]";
3./admin/templates/goods_list.htm,在
{if $use_storage} <th><a href="javascript:listTable.sort('goods_number'); ">{$lang.goods_number}</a>{$sort_goods_number}</th> {/if}
后,添加
<th><a href="javascript:listTable.sort('sales_volume_base'); ">{$lang.sales_volume_base}</a>{$sort_sales_volume_base}</th>
在
{if $use_storage} <td align="right"><span onclick="listTable.edit(this, 'edit_goods_number', {$goods.goods_id})">{$goods.goods_number}</span></td> {/if}
后,添加
<td align="center"><span onclick="listTable.edit(this, 'edit_sales_volume_base', {$goods.goods_id})">{$goods.sales_volume_base}</span></td>
4./admin/goods.php,在
/** * 列表链接 * @param bool $is_add 是否添加(插入) * @param string $extension_code 虚拟商品扩展代码,实体商品为空 * @return array('href' => $href, 'text' => $text) */ function list_link($is_add = true, $extension_code = '')
前,添加
/*------------------------------------------------------ */ //-- 修改商品虚拟销量 /*------------------------------------------------------ */ elseif ($_REQUEST['act'] == 'edit_sales_volume_base') { check_authz_json('goods_manage'); $goods_id = intval($_POST['id']); $sales_volume_base = json_str_iconv(trim($_POST['val'])); if ($exc->edit("sales_volume_base = '$sales_volume_base', last_update=" .gmtime(), $goods_id)) { clear_cache_files(); make_json_result(stripslashes($sales_volume_base)); } }
5.goods.php,在
$smarty->assign('categories', get_categories_tree($goods['cat_id'])); // 分类树
后,添加
$smarty->assign('sales_count', get_sales_count($goods_id));
在末尾添加
/* 商品累计销量带自定义_新增加 */ function get_sales_count($goods_id) { /* 查询该商品的自定义销量 */ $sales_base = $GLOBALS['db']->getOne('SELECT sales_volume_base FROM '.$GLOBALS['ecs']->table('goods').' WHERE goods_id = '.$goods_id); /* 查询该商品的实际销量 */ $sql = 'SELECT IFNULL(SUM(g.goods_number), 0) ' . 'FROM ' . $GLOBALS['ecs']->table('order_info') . ' AS o, ' . $GLOBALS['ecs']->table('order_goods') . ' AS g ' . "WHERE o.order_id = g.order_id " . "AND o.order_status " . db_create_in(array(OS_CONFIRMED, OS_SPLITED)) . "AND o.shipping_status " . db_create_in(array(SS_SHIPPED, SS_RECEIVED)) . " AND o.pay_status " . db_create_in(array(PS_PAYED, PS_PAYING)) . " AND g.goods_id = '$goods_id'"; $sales_count = $GLOBALS['db']->getOne($sql); /* 商品累计销量默认显示方式 */ if ($GLOBALS['_CFG']['show_sales_type']) { $row['sales_volume_total'] = $sales_count; //实际销量 } else { $row['sales_volume_total'] = $sales_base + $sales_count; //自定义销量+实际销量 } return ($row['sales_volume_total']); }
6.在/languages/zh_cn/admin/shop_config.php,中
/languages/zh_cn/admin/shop_config.php
下,添加
$_LANG['cfg_name']['show_goods_sales'] = '是否显示商品累计销量'; $_LANG['cfg_range']['show_goods_sales']['1'] = '显示'; $_LANG['cfg_range']['show_goods_sales']['0'] = '不显示'; $_LANG['cfg_name']['show_sales_type'] = '商品累计销量默认显示方式'; $_LANG['cfg_range']['show_sales_type'][1] = '真实显示'; $_LANG['cfg_range']['show_sales_type'][0] = '虚拟显示';
7./languages/zh_cn/admin/goods.php,中
$_LANG['goods_sn_exists'] = '您输入的货号已存在,请换一个';
后,添加
$_LANG['sales_volume_base'] = '虚拟销量';
8./languages/zh_cn/common.php,中
$_LANG['divided_into'] = '分成规则';
后,添加
$_LANG['sales_volume_total'] = '累计销量:'; $_LANG['pcs'] = '件';
9./themes/default/goods.dwt,在
<img src="images/stars{$goods.comment_rank}.gif" alt="comment rank {$goods.comment_rank}" /></dd>
后,添加
{if $cfg.show_goods_sales}
<dd style="width:48%; padding-left:7px;">
<strong>{$lang.sales_volume_total}</strong>
<font class="shop">
{$sales_count}
{if $goods.measure_unit}{$goods.measure_unit}{else}{$lang.pcs}{/if}</font>
</dd>
{/if}
OK,完成!
本文标签:
很赞哦! ()
图文教程
ecshop后台编辑器表情怎么修改
ECSHOP后台的商品编辑和文章编辑使用的是fckedtor编辑器,此编辑器的工具条工具栏是可以自定义的,ECSHOP默认使用的是Normal ,属于中档功能,下面我们来改一下设置,让fckedtor的全
ecshop的wap模板_手机手机模板设置教程
1.ecshop wap模板设置教程1.后台添加广告位:名称为:wap首页banner轮播 (宽度是600 高度是300)
ecshop办事处列表,ecshop权限管理介绍
ECSHOP网店系统提供了办事处的功能,可以在后台为自己的网店添加一个个的办事处,并可设置负责该办事处的管理员,注意:那个办事处的管理员只能看到那个地区的订单
ecshop优惠活动优惠卷设置教程
首入ECShop 的后台管理中,从左边选择促销管理 -> 优惠活动然后点击右上角的添加优惠活动,在这里你需要填写优惠活动名称,优惠活动开始时间以及优惠活动结束时间。
相关源码
-
(PC+WAP)蓝色公司注册财务会计公证律师网站源码下载本模板基于PbootCMS内核开发,为财务会计事务所、律师公证机构等专业服务机构打造。采用自适应设计,确保在各类设备上都能呈现专业视觉效果,帮助机构建立值得信赖的线上形象。查看源码 -
(PC+WAP)院校学院职业学校机构协会网站开源源码下载本模板基于PbootCMS系统开发,为高等院校、职业学校等教育机构设计,特别适合展示学校概况、院系设置、招生信息等内容。采用双端适配技术,确保在PC和移动设备上都能获得良好的浏览体验。查看源码 -
(自适应响应式)装修装潢设计公司网站源码下载本模板为装修设计企业打造,采用PbootCMS内核开发,整体设计突出空间美学与功能性结合。首页采用大图轮播展示工程案例,服务项目模块支持三维效果展示,呈现装修设计企业的专业形象与技术实力。查看源码 -
(PC+WAP)蓝色钢材加工建筑装修施工材料网站模板下载为钢材加工企业设计的PbootCMS响应式模板,采用PC+WAP双端适配技术,数据实时同步。简洁大气的蓝色工业风格设计,突出钢材加工行业特性,其他制造业用户更换图文内容即可快速应用。查看源码 -
(PC+WAP)蓝色低碳环保隔断板装修装饰类网站pbootcms源码下载本款基于PbootCMS开发的网站模板为活动隔断板、装修装饰行业打造,特别适合移动隔断、环保隔断、办公分区等产品的展示与推广。查看源码 -
(自适应)五金配件机械加工设备pbootcms模板免费下载这款基于PbootCMS开发的网站模板为五金配件和机械加工行业设计,采用简洁有力的设计风格,突出工业产品的专业性和可靠性。模板结构清晰,功能完善,能够有效展示各类工业产品的技术参数和应用场景。查看源码
| 分享笔记 (共有 篇笔记) |
