今天简单的实现了一下ecshop商品导出到第三方的购买链接功能。
大致思路是给商品添加一个buy_link的text字段,存为json结构,然后通过json解析输出到商品购买页面
1.添加字段
增加购买链接字段,执行sql语句:
1
ALTER TABLE `ecs_goods` ADD `buy_link` TEXT NULL AFTER `goods_thumb` ;
2.增加商品发布表单项
随意增加
1
<tr>
2
<td class="label">购买链接</td>
3
<td><textarea name="buy_link" cols="40" rows="3">{$goods.buy_link}</textarea></br>
4
使用了简单json结构,请严格按照格式填写(如:{'taobao':'','360buy':''},</br>分别代表淘宝店和京东店内的购买连接)
5
</td>
6
7
</tr>
到/admin/templates/goods_info.htm,我增加在第258行下面(即,第三个table最后注意不要破坏table结构)
后台商品编辑页面多出了一个项目
3.增加读取数据
因为涉及到数据更新,应该先给表单填写初始值。在/admin/goods.php 446行下增加
1
$smarty->assign('buy_link',$goods['buy_link']);
4.增加发布商品存库
编辑/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 = "INSERT INTO " . $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',".