实现Ecshop商品跳到淘宝、京东等的购买链接
2014-12-17 23:35
405 查看
今天简单的实现了一下ecshop商品导出到第三方的购买链接功能。
大致思路是给商品添加一个buy_link的text字段,存为json结构,然后通过json解析输出到商品购买页面
1.添加字段
增加购买链接字段,执行sql语句:
2.增加商品发布表单项
随意增加
到/admin/templates/goods_info.htm,我增加在第258行下面(即,第三个table最后注意不要破坏table结构)
后台商品编辑页面多出了一个项目
3.增加读取数据
因为涉及到数据更新,应该先给表单填写初始值。在/admin/goods.php446行下增加
4.增加发布商品存库
编辑/admin/goods.php页面821开始。取得表单传值buy_link,并在insert语句中增加中字段buy_link。可以直接修改为
,这样增加商品时就能指定buy_link了
5.增加修改商品存库
在/admin/goods.php901行上的sql拼接上增加
则变为
由此,数据入库基本完成,现在做模版赋值。
6.模版赋值
goods_info函数已经读取出来所有数据,因此直接修改/goods.php(注:是根目录下的),在197行下增加
7.模版读取
修改商品详情模版,如/themes/default/goods.dwt。397行下增加
ok,功能完成。
下面简单测试下:编辑任意商品buy_link属性为[{text:'淘宝购买',url:'http://taobao.com'},{text:'京东购买',url:'http://360buy.com?p=89899'}]保存,查看页面,如图:
商品导出连接
由此,已经能够读取到导出链接了
第4步中的内容改为
大致思路是给商品添加一个buy_link的text字段,存为json结构,然后通过json解析输出到商品购买页面
1.添加字段
增加购买链接字段,执行sql语句:
1 | ALTER TABLE `ecs_goods` ADD `buy_link`TEXT NULL AFTER `goods_thumb`; |
随意增加
1 | <tr> |
2 | <td class = "label" >购买链接</td> |
3 | <td><textareaname= "buy_link" cols= "40" rows= "3" >{ $goods .buy_link}</textarea></br> |
4 | 使用了简单json结构,请严格按照格式填写(如:{ 'taobao' : 'http://' , '360buy' : 'http://' },</br>分别代表淘宝店和京东店内的购买连接) |
5 | </td> |
6 |
7 | </tr> |
后台商品编辑页面多出了一个项目
3.增加读取数据
因为涉及到数据更新,应该先给表单填写初始值。在/admin/goods.php446行下增加
1 | $smarty ->assign( 'buy_link' , $goods [ 'buy_link' ]); |
编辑/admin/goods.php页面821开始。取得表单传值buy_link,并在insert语句中增加中字段buy_link。可以直接修改为
1 | $goods_thumb =( empty ( $goods_thumb )&&isset( $_POST [ 'auto_thumb' ]))? $goods_img : $goods_thumb ; |
2 | $buy_link = empty ( $_POST [ 'buy_link' ])? '' :trim( $_POST [ 'buy_link' ]); |
3 |
4 | /*入库*/ |
5 | if ( $is_insert ) |
6 | { |
7 | if ( $code == '' ) |
8 | { |
9 | $sql = "INSERTINTO" . $ecs ->table( 'goods' ). "(goods_name,goods_name_style,goods_sn," . |
10 | "cat_id,brand_id,shop_price,market_price,is_promote,promote_price," . |
11 | "promote_start_date,promote_end_date,goods_img,goods_thumb,buy_link,original_img,keywords,goods_brief," . |
12 | "seller_note,goods_weight,goods_number,warn_number,integral,give_integral,is_best,is_new,is_hot," . |
13 | "is_on_sale,is_alone_sale,is_shipping,goods_desc,add_time,last_update,goods_type,rank_integral,suppliers_id)" . |
14 | "VALUES('$_POST[goods_name]','$goods_name_style','$goods_sn','$catgory_id'," . |
15 | "'$brand_id','$shop_price','$market_price','$is_promote','$promote_price'," . |
16 | "'$promote_start_date','$promote_end_date','$goods_img','$goods_thumb','$buy_link','$original_img'," . |
17 | "'$_POST[keywords]','$_POST[goods_brief]','$_POST[seller_note]','$goods_weight','$goods_number'," . |
18 | "'$warn_number','$_POST[integral]','$give_integral','$is_best','$is_new','$is_hot','$is_on_sale','$is_alone_sale',$is_shipping," . |
19 | "'$_POST[goods_desc]','" .gmtime(). "','" .gmtime(). "','$goods_type','$rank_integral','$suppliers_id')" ; |
20 | } |
21 | else |
22 | { |
23 | $sql = "INSERTINTO" . $ecs ->table( 'goods' ). "(goods_name,goods_name_style,goods_sn," . |
24 | "cat_id,brand_id,shop_price,market_price,is_promote,promote_price," . |
25 | "promote_start_date,promote_end_date,goods_img,goods_thumb,buy_link,original_img,keywords,goods_brief," . |
26 | "seller_note,goods_weight,goods_number,warn_number,integral,give_integral,is_best,is_new,is_hot,is_real," . |
27 | "is_on_sale,is_alone_sale,is_shipping,goods_desc,add_time,last_update,goods_type,extension_code,rank_integral)" . |
28 | "VALUES('$_POST[goods_name]','$goods_name_style','$goods_sn','$catgory_id'," . |
29 | "'$brand_id','$shop_price','$market_price','$is_promote','$promote_price'," . |
30 | "'$promote_start_date','$promote_end_date','$goods_img','$goods_thumb','$buy_link','$original_img'," . |
31 | "'$_POST[keywords]','$_POST[goods_brief]','$_POST[seller_note]','$goods_weight','$goods_number'," . |
32 | "'$warn_number','$_POST[integral]','$give_integral','$is_best','$is_new','$is_hot',0,'$is_on_sale','$is_alone_sale',$is_shipping," . |
33 | "'$_POST[goods_desc]','" .gmtime(). "','" .gmtime(). "','$goods_type','$code','$rank_integral')" ; |
34 | } |
35 | } |
5.增加修改商品存库
在/admin/goods.php901行上的sql拼接上增加
1 | "buy_link='$buy_link'," . |
1 | $sql .= "buy_link='$buy_link'," . |
2 | "keywords='$_POST[keywords]'," . |
3 | "goods_brief='$_POST[goods_brief]'," . |
4 | "seller_note='$_POST[seller_note]'," . |
5 | "goods_weight='$goods_weight'," . |
6 | "goods_number='$goods_number'," . |
7 | "warn_number='$warn_number'," . |
8 | "integral='$_POST[integral]'," . |
9 | "give_integral='$give_integral'," . |
10 | "rank_integral='$rank_integral'," . |
11 | "is_best='$is_best'," . |
12 | "is_new='$is_new'," . |
13 | "is_hot='$is_hot'," . |
14 | "is_on_sale='$is_on_sale'," . |
15 | "is_alone_sale='$is_alone_sale'," . |
16 | "is_shipping='$is_shipping'," . |
17 | "goods_desc='$_POST[goods_desc]'," . |
18 | "last_update='" .gmtime(). "'," . |
19 | "goods_type='$goods_type'" . |
20 | "WHEREgoods_id='$_REQUEST[goods_id]'LIMIT1" ; |
6.模版赋值
goods_info函数已经读取出来所有数据,因此直接修改/goods.php(注:是根目录下的),在197行下增加
1 | /*第三方购买链接*/ |
2 |
3 | //不是json数据则不予赋值,防止编辑格式错误致使前台js解析出错 |
4 |
5 | if ( is_null (json_decode( $goods [ 'buy_link' ]))){ |
6 |
7 | $smarty ->assign( 'buy_link' , $goods [ 'buy_link' ]); |
8 |
9 | } |
修改商品详情模版,如/themes/default/goods.dwt。397行下增加
1 | <!--{*第三方购买*}--> |
2 | <!--{if$buy_link!=""}--> |
3 | < script type = "text/javascript" language = "javascript" > |
4 |
5 | vartext=""; |
6 |
7 | //if(isJSONText){ |
8 | Jbuylink=eval("{$buy_link}"); |
9 | for(i=0;i< Jbuylink.length ;i++){ |
10 | text+='<a href = "'+Jbuylink[i].url+'" target = "_blank" >'+Jbuylink[i].text+'</ a > '; |
11 | } |
12 | document.write("< br />"+text); |
13 | //} |
14 |
15 | </ script > |
16 | <!--{/if}--> |
下面简单测试下:编辑任意商品buy_link属性为[{text:'淘宝购买',url:'http://taobao.com'},{text:'京东购买',url:'http://360buy.com?p=89899'}]保存,查看页面,如图:
商品导出连接
由此,已经能够读取到导出链接了
第4步中的内容改为
1 | < tr > |
2 | < td class = "label" >购买链接</ td > |
3 | < td >< textarea name = "buy_link" cols = "40" rows = "3" >{$goods.buy_link}</ textarea ></ br > |
4 | 请严格按照格式填写(如:[{text:'淘宝购买',url:'http://taobao.com'},{text:'京东购买',url:'http://360bu.com'}]</ br >分别代表淘宝店和京东店内的购买连接) |
5 | </ td > |
6 | </ tr > |
相关文章推荐
- ecshop每个商品添加去淘宝购买链接
- JavaScript实现仿淘宝商品购买数量的增减效果
- javascript实现 京东淘宝等商城的商品图片大图预览功能
- JavaScript实现仿淘宝商品购买数量的增减效果
- javascript实现 京东淘宝等商城的商品图片大图预览功能
- javascript实现 京东淘宝等商城的商品图片大图预览功能(图片放大器)
- ECSHOP产品详情页修改商品购买数量并实时更新商品总价的实现与优化
- ECSHOP商品详情页面如何实现直接购买和放入到购物车同时存在
- 如何让ECSHOP后台添加完商品后默认不上架 ecshop实现供应商上传产品需要审核
- 根据淘宝商品 num_iid 批量生成淘宝客链接的 PHP 函数
- ecshop添加“浏览过此商品的人还购买了”功能
- 根据淘宝商品 num_iid 批量生成淘宝客链接的 PHP 函数
- Cookies (php实现类似淘宝最近浏览商品的功能模型代码) 转
- 用Session实现简单的购物车 (将点击了购买链接的书籍放到购物车页面显示出来)
- ECSHOP首页商品显示购买过的次数
- ECSHOP 版本2.7 商品详情页面,显示购买记录
- ECSHOP 如何删除商品列表页 购买弹出 商品属性框后面的价格
- 随滚度条移动的浮动层(类似京东,淘宝商品介绍栏)
- ECSHOP商品页加入购物车弹出仿淘宝效果
- 使用session实现简单的购物车 (将点击了购买链接的书籍放到购物车页面显示出来)。