• 注册

人人商城二开之前端模板调用分析和添加副标题演示

人人商城的商品字段比较有意思,老杨在做二开的时候,记录一下商品字段的分析过程。

一、商品数据表

商品数据表名 ewei_shop_goods,数据库字典在本文末附上!这里也可参考 人人商城/数据库字典/ims_ewei_shop_goods

二、商品输出&前端模板

商品显示模板文件

//diy自定义商城首页商品列表
/addons/ewei_shopv2/plugin/diypage/template/mobile/default/template/tpl_goods.html

//默认产品列表模板
/addons/ewei_shop/template/mobile/default/shop/index/goods.html

其中的主要参数 $indexrecommands 来源于

/addons/ewei_shop/core/mobile/index.php

详见如下代码段

if (!empty($goodids)) {
	$indexrecommands = pdo_fetchall('select id, title, thumb, marketprice,ispresell,presellprice, productprice, minprice, total,type from ' . tablename('ewei_shop_goods') . (' where id in( ' . $goodids . ' ) and uniacid=:uniacid and deleted = 0 and status=1 order by instr(\'' . $goodids . '\',id),displayorder desc'), array(':uniacid' => $uniacid));

	foreach ($indexrecommands as $key => $value) {
		if (0 < $value['ispresell']) {
			$indexrecommands[$key]['minprice'] = $value['presellprice'];
		}
	}
}

三、应用之添加副标题展示

上边的分析可以应用在标题下边,显示一个副标题

在上述代码段中,将 subtitle 字段添加到 pdo_fetchall() mysql语句中

$indexrecommands = pdo_fetchall('select id, title, subtitle, thumb, marketprice,ispresell,presellprice, productprice, minprice, total,type from ' . tablename('ewei_shop_goods') . (' where id in( ' . $goodids . ' ) and uniacid=:uniacid and deleted = 0 and status=1 order by instr(\'' . $goodids . '\',id),displayorder desc'), array(':uniacid' => $uniacid));

接着就是修改模板了,分两种情况:

1、以默认商品列表模板为例

在如下文件中

//默认产品列表模板
/addons/ewei_shop/template/mobile/default/shop/index/goods.html

找到

<div class="name"></div>

并在其下添加如下代码

<div class="subname">
	{$item['subtitle']}
</div>

2、以DIY店铺装修创建的商品列表模板为例

2.1 在如下文件中

//diy自定义商城首页商品列表
/addons/ewei_shop/plugin/diypage/template/mobile/default/template/tpl_goods.html

找到类似 {if $diyitem['params']['showtitle']==1} 的代码段,并在其后的外部添加如下代码,用于前端展示副标题和副标题的文字颜色。有两处代码。

{if $diyitem['params']['showsubtitle']==1}
    <div class="name" style="color: {$diyitem['style']['showsubtitlecolor']};">
        {$goodsitem['subtitle']}
    </div>
{/if}

2.2 接着要修改店铺装修插件

2.2.1 店铺装修页面用于设置的部分

打开如下文件

/addons/ewei_shopv/plugin/diypage/template/web/_template_edit.html

//V3版本
/addons/ewei_shopv/plugin/diypage/template/web_v3/_template_edit.html

搜索 showtitle 找到“商品名称”和“名称颜色”代码段,在其后添加如下代码段,用于设置商品副标题和副标题的文字颜色。

<div class="form-group">
    <div class="col-sm-2 control-label">商品副标题</div>
    <div class="col-sm-10">
        <label class="radio-inline"><input type="radio" name="showsubtitle" value="0" class="diy-bind" data-bind-child="params" data-bind="showsubtitle" <%if params.showsubtitle=='0'%>checked="checked"<%/if%>> 不显示</label>
        <label class="radio-inline"><input type="radio" name="showsubtitle" value="1" class="diy-bind" data-bind-child="params" data-bind="showsubtitle" <%if params.showsubtitle=='1'%>checked="checked"<%/if%> > 显示</label>
    </div>
</div>
<%if params.showsubtitle=='1'%>
    <div class="form-group">
        <div class="col-sm-2 control-label">副标题颜色</div>
        <div class="col-sm-4">
            <div class="input-group">
                <input class="form-control input-sm diy-bind color" data-bind-child="style" data-bind="showsubtitlecolor" value="<%style.showsubtitlecolor%>" type="color" />
                <span class="input-group-addon btn btn-default" onclick="$(this).prev().val('#000000').trigger('propertychange')">重置</span>
            </div>
        </div>
    </div>
<%/if%>

2.2.2 店铺装修页面用于展示设置效果的部分

/addons/ewei_shopv/plugin/diypage/template/web/_template.html

//V3版本
/addons/ewei_shopv/plugin/diypage/template/web_v3/_template.html

搜索 <%if params.showtitle=='1'%> 找到展示商品名称和名称颜色的代码段,在其后添加如下代码段,用于展示商品副标题和副标题的文字颜色的设置效果。有两处代码。

<%if params.showsubtitle=='1'%>
<div class="name" style="color: <%style.showsubtitlecolor%>;">
    <%item.subtitle%>
</div>
<%/if%>

2.2.3 修改JS文件

打开店铺装修的JS文件

/addons/ewei_shop/plugin/diypage/static/js/diy.min.js

搜索 modal.getNavs 找到如下代码段:

goods: {
                name: '商品组',

添加商品标题及颜色的默认设置项

//params中添加
'showsubtitle': '1',

//style中添加
'showsubtitlecolor': '#000000',

接着找到 modal.items[itemid].data[childid] ,添加如下段:

'subtitle': data.subtitle,

至此修改完成。

四、前端模板生效

上述各种修改,需要进入店铺装修,先保存模板,然后将上传到数据库表 ims_ewei_shop_diypage 中,前台更新一下缓存,当有用户访问到这个页面时,将自动缓存到本地文件夹并调用输出到前端。

注:DIY模板库存储在表 ims_ewei_shop_diypage_template 中。

本地缓存文件夹路径是:

/data/tpl/app/ewei_shopv2/plugin/diypage/default/mobile/diypage/template/tpl_member.tpl.php

拓展一下:如果需要设置标题的字号,同样的方法来添加。

五、数据库字典

字段名 功能
id
uniacid
pcate 一级分类ID
ccate 二级分类ID
tcate 三级分类ID
type 类型 1 实体物品 2 虚拟物品 3 虚拟物品(卡密) 4 批发 10 话费流量充值 20 充值卡
status 状态 0 下架 1 上架 2 赠品上架
displayorder 显示顺序
title 商品名称
shorttitle 短名称 打印需要
thumb 商品图
unit 商品单位
description 分享描述
content 商品详情
goodssn 商品编号
productsn 商品条码
productprice 商品原价
marketprice 商品现价
costprice 商品成本
originalprice 原价 好象已经废弃
total 商品库存
totalcnf 减库存方式 0 拍下减库存 1 付款减库存 2 永不减库存
sales 已出售数
salesreal 实际售出数
spec 商品规格设置
createtime 建立时间
weight 重量
credit 购买赠送积分,如果带%号,则为按成交价比例计算
maxbuy 单次最多购买量
usermaxbuy 用户最多购买量
hasoption 启用商品规则 0 不启用 1 启用
dispatch 配送
thumb_url 缩略图地址
isnew 新上
ishot 热卖
isdiscount 促销
isrecommand 推荐
issendfree 包邮
istime 限时卖
*isglobal 全球购
iscomment 允许评价
timestart 限卖开始时间
timeend 限卖结束时间
viewcount 查看次数
deleted 是否删除
hascommission 是否有分销
commission1_rate 一级分销比率
commission1_pay 一级分销固定佣金
commission2_rate 二级分销比率
commission2_pay 二级分销固定佣金
commission3_rate 三级分销比率
commission3_pay 三级分销固定佣金
score 得分 好象已经废弃
taobaoid 淘宝ID 淘宝助手
taobaourl 淘宝网址 淘宝助手
updatetime 更新时间
share_title 分享标题
share_icon 分享图标
cash 货到付款 1 不支持 2 支持
commission_thumb 海报图片
isnodiscount 不参与会员折扣
showlevels 浏览权限
buylevels 购买权限
showgroups 会员组浏览权限
buygroups 会员组购买权限
isverify 支持线下核销 Null 0 1 不支持 2 支持
storeids 支持门店ID
noticeopenid 商家通知
noticetype 提醒类型
needfollow 需要关注
followtip 关注事项
followurl 关注地址
virtual 虚拟商品模板ID 0 多规格虚拟商品
ccates 一级多重分类
pcates 二级多重分类
pcates 三级多重分类
discounts 折扣
nocommission 不执行分销
hidecommission 隐藏分销按钮
artid 营销文章ID
detail_logo 店铺LOGO
detail_shopname 店铺名称
detail_btntext1 按钮1名称
detail_btnurl1 按钮1链接 默认"查看所有商品"及"默认的全部商品连接"
detail_btntext2 按钮2名称
detail_btnurl2 按钮2链接 默认"进店逛逛"及"默认的小店或商城连接"
detail_totaltitle 全部宝贝x个
saleupdate 销售更新?
deduct 积分抵扣 0 不支持积分抵扣 >0 最多抵扣 元
deduct2 余额抵扣 0 支持全额抵扣 -1 不支持余额抵扣 >0 最多抵扣 元
ednum 单品满件包邮 0 : 不支持满件包邮
edmoney 单品满额包邮 0 : 不支持满额包邮
edareas 不参加满包邮的地区 ,0 : 不支持满件包邮
diyformtype 自定义表单类型 0 关闭 1 附加形式 2 替换模式
diyformid 自定义表单ID
diymode 自定义表单模式 0 系统默认 1 点击立即购买时填写 2 确认订单时填写
dispatchtype 配送类型 0 运费模板 1 统一邮费
dispatchid 配送ID
dispatchprice 统一邮费
manydeduct 多件累计抵扣积分
cates 多重分类数据集
*erpid erpid
*erpids 数据集
*optionids 数据集
*goodscount 商品是多倍组成,方便计算成本价
*weipos_prodid 甩手产品ID
*weipos_storeid 甩手门店id
isdiscount_title v2 促销标题
isdiscount_time v2 促销结束时间
isdiscount_discounts v2 促销价格 数字为价格 百分数 为折扣
commission v2 分销
shopid v2 商户ID
allcates v2 好象无用
minbuy v2 用户单次必须购买数量
invoice v2 提供发票
repair v2 保修
seven v2 7天无理由退换
money v2 余额返现
minprice v2 多规格中最小价格,无规格时显示销售价
maxprice v2 多规格中最大价格,无规格时显示销售价
province v2 商品所在省 如为空则显示商城所在
city v2 商品所在城市 如为空则显示商城所在
buyshow v2 购买后可见 0 关闭 1 开启
buycontent v2 购买可见开启后的内容
virtualsend v2 自动发货 0 否 1 是 ,注:自动发货后,订单自动完成
virtualsendcontent v2 自动发货内容
verifytype v2 核销类型 0 按订单核销 1 按次核销 2 按消费码核销
diyfields v2
diysaveid v2
diysave v2
quality v2 正品保证
groupstype v2 是否支持拼团 0 否 1 支持
showtotal v2 显示库存 0 不显示 1 显示
subtitle v2 子标题
sharebtn v2 分享按钮链接方式 0 弹出关注提示层 1 跳转至商品海报
merchid v2 商户ID
check v2 审核状态
minpriceupdated v2 是否更新过价格 标识字段无用
catesinit3 v2 是否初始化分类信息 标识字段无用
showtotaladd v2 是否调整过显示库存 标识字段无用
thumb_first v2 详情页面显示首图 0 不显示 1 显示 注:首图为列表页使用,尺寸较小
merchsale v2 手机端使用的价格 0 当前设置促销价格 1 商户设置促销价格
keywords v2 关键词
catch_id v2 抓取产品信息ID
catch_url v2 抓取产品地址
catch_source v2 抓取产品来源
labelname v2 商品标签
autoreceive v2 自动收货 0 系统设置 -1 不自动收货 >0 天数
cannotrefund v2 不允许退货
bargain v2 砍价
buyagain v2 重复购买折扣
buyagain_islong v2 购买一次后,以后都使用这个折扣 0 否 1 是
buyagain_condition v2 使用条件 0 付款后 1 完成后
buyagain_sale v2 可否使用优惠 (重复购买时,是否与其他优惠共享!其他优惠享受后,再使用这个折扣)
buyagain_commission v2 复购分销
diypage v2 自定义页面ID
cashier v2 收银员
seckill v2 是否秒杀
seckill_taskid v2 秒杀任务ID
seckill_roomid v2 秒杀房间ID
seckill_timeid v2 秒杀时间ID
issendtime v2 兑换限时 0 指定时间兑换 1 限时兑换
usetime v2 自动使用期限
endtime v2 使用有效期至
merchdisplayorder v2 多商户排序
exchange_stock v2 兑换库存
exchange_postage v2 兑换邮费
ispresell v2 是否预售商品
presellprice v2 预售价格
presellover v2 预售结束
presellovertime v2 预售结束后几天转为正常销售
presellstart v2 预售开始
preselltimestart v2 预售开始时间
presellend v2 预售结束
preselltimeend v2 预售结束时间
presellsendtype v2 发货类型 0 固定时间发货 1 购买后几天发货
presellsendstatrttime v2 预售发货时间
presellsendtime v2 购买后几天发货
isstatustime v2
statustimestart v2
statustimeend v2
showsales v2 显示销量
*supplierid V2 供货商id
 

发表评论 

我还是想用邮箱注册

登录

忘记密码 ?

用第三方帐号快捷登录

已有账户?前往登录吧~

注册