网站建设套餐 网站建设作品 网站模板

ecshop V2.7.3 商品属性仿淘宝,以及库存的联动。

2012年11月23日 01:11:43

        ecshop V2.7.3 商品属性仿淘宝,以及库存的联动,这个功能在2.7.0的时候就有很多人呼吁官方开发,可是不知道为什么,今天都到了2.7.3了,EC官方还是用原来那个很丑的样子。没办法,求人不如求自己。济南网站建设-济南网站建设公司-济南腾飞网络今天就告诉大家实现这个功能的具体办法。

效果如图所示:

echsop商品属性仿淘宝。

实现方法:

一、先下载test.gif文件 echsop商品属性仿淘宝,选择状态。

二、打开ecshop模版目录的style.css文件,添加如下代码:

.catt{

width:100%;

height:auto;

overflow:hidden;

padding-bottom:5px;

}
.catt a{

border: #7E7E7E 1px solid;

text-align: center;

background-color: #fff;

margin-left:5px;

margin-top:6px;

padding-left: 10px;

padding-right:10px;

display:block;

white-space: nowrap;

color:#000;

text-decoration:none;

float:left;

}
.catt a:hover {

border:#ED0036 2px solid;

margin: -1px;

margin-left:4px;

margin-top:5px;

}
.catt a:focus {

outline-style:none;

}
.catt .cattsel {

border:#ED0036 2px solid;

margin: -1px;

background: url("images/test.gif") no-repeat bottom right;

margin-left:4px;

margin-top:5px;

}
.catt .cattsel a:hover {

border: #ED0036 2px solid;

margin:-1px;

background: url("images/test.gif") no-repeat bottom right;

}

注:以上CSS可根据自己的情况修改。

三、打开echsop模版文件goods.dwt,找到:

<!-- {foreach from=$spec.values item=value key=key} -->
<label for="spec_value_{$value.id}">
<input type="radio" name="spec_{$spec_key}" value="{$value.id}" id="spec_value_{$value.id}" {if $key eq 0}checked{/if} onclick="changePrice()" />

{$value.label} [{if $value.price gt 0}{$lang.plus}{elseif $value.price lt 0}{$lang.minus}{/if} {$value.format_price|abs}]

</label>

<br />

<!-- {/foreach} -->

替换为:

<!-- {foreach from=$spec.values item=value key=key} -->

<a {if $key eq 0}class="cattsel"{/if} onclick="changeAtt(this,{$value.id},{$goods.goods_id})" href="javascript:;" name="{$value.id}" title="[{if $value.price gt 0}{$lang.plus}{elseif $value.price lt 0}{$lang.minus}{/if} {$value.format_price|abs}]">

{$value.label}

<input style="display:none" id="spec_value_{$value.id}" type="radio" name="spec_{$spec_key}" value="{$value.id}" {if $key eq 0} checked{/if} />

</a>

<!-- {/foreach} -->

四、在ECshop的模版文件里添加js文件:

function changeAtt(t,a,goods_id) {
t.lastChild.checked='checked';
for (var i = 0; i<t.parentNode.childNodes.length;i++) {
if (t.parentNode.childNodes[i].className == 'cattsel') {
t.parentNode.childNodes[i].className = '';
}
}

t.className = "cattsel";
var formBuy = document.forms['ECS_FORMBUY'];
spec_arr = getSelectedAttributes(formBuy);
Ajax.call('goods.php?act=get_products_info', 'id=' + spec_arr+ '&goods_id=' + goods_id, shows_number, 'GET', 'JSON');
changePrice();
}
function shows_number(result)
{
if(result.product_number !=undefined)
{
$('shows_number').innerHTML = result.product_number+'件';
}
else
{
$('shows_number').innerHTML = '未设置'
}
}

五、打开ecshop的goods.php ,大约在71行下添加如下代码:

if (!empty($_REQUEST['act']) && $_REQUEST['act'] == 'get_products_info')
{
include('includes/cls_json.php');

$json = new JSON;
// $res = array('err_msg' => '', 'result' => '', 'qty' => 1);

$spce_id = $_GET['id'];
$goods_id = $_GET['goods_id'];
$row = get_products_info($goods_id,explode(",",$spce_id));
//$res = array('err_msg'=>$goods_id,'id'=>$spce_id);
die($json->encode($row));

}

好了!更新缓存,现在我们就实现了ecshop V2.7.3 商品属性仿淘宝,以及库存的联动的功能了。

本文由济南网站建设-济南网站建设公司-济南腾飞网络整理发布。

转载请注明。

服务宗旨:客户至上、服务保证、信用保证、售后保证、价格保证。

在济南找济南网站建设公司就选择我们,我们用服务保证你选择的没有错误。

公司地址:山东省济南市东关大街中泰大厦

Copyright©2020-2030  www.0531soso.com

济南网站设计我们值得信赖.