ecshop商品扩展分类原理分析
2011-11-03 22:31 来源:www.chinab4c.com 作者:ecshop专家
ecshop商品扩展分类原理分析,这个文章主要是讲述ecshop的商品里面。为了可以一个商品在多个分类里面出现。我们可以在录入ecshop的时候对ecshop进行分类扩展。这就方便很多商品在不同的分类或者在相关分类里面得到暴光的机会。这就是ecshop商品分类的作用。
在ecshop后台商品编辑的页面,有段这样的代码。
<tr>
<td class="label">{$lang.lab_other_cat}</td>
<td>
<input type="button" value="{$lang.add}" onclick="addOtherCat(this.parentNode)" class="button" />
{foreach from=$goods.other_cat item=cat_id}
<select name="other_cat[]"><option value="0">{$lang.select_please}</option>{$other_cat_list.$cat_id}</select>
{/foreach}
</td>
</tr>
这里就是通过这个按扭,可以调用出相关的ecshop扩展分类。
1:ecshop商品扩展分类存放的数据库和操作程序是什么样子的。
首先我们看ecshop后台商品管理的程序goods.php。里面有段代码
if (isset($_POST['other_cat']))
{
handle_other_cat($goods_id, array_unique($_POST['other_cat']));
}
这个就是处理商品扩展分类的。
2:我们分析ecshop处理商品扩展分类的具体操作。
handle_other_cat这个函数。有以下代码
/* 查询现有的扩展分类 */
$sql = "SELECT cat_id FROM " . $GLOBALS['ecs']->table('goods_cat') .
" WHERE goods_id = '$goods_id'";
$exist_list = $GLOBALS['db']->getCol($sql);
通过这个我们看的很清楚,ecshop的商品扩展分类是放在ecshop数据库goods_cat表里面的。当录入某个商品的时候,如果存在扩展分类。那么就通过商品的ID对应将ECSHOP商品扩展分类录入到这个里面。完成了ECSHOP商品扩展分类的录入。
3:如何调用ECSHOP商品扩展分类。
我们看到ecshop商品分类页面,存在这样的代码,来调用ecshop分类下和扩展分类下的商品。
$display = $GLOBALS['display'];
$where = "g.is_on_sale = 1 AND g.is_alone_sale = 1 AND ".
"g.is_delete = 0 AND ($children OR " . get_extension_goods($children) . ')';
而且这个里面调用的以下函数就是来取ecshop商品扩展分类下的商品的。
function get_extension_goods($cats)
{
$extension_goods_array = '';
$sql = 'SELECT goods_id FROM ' . $GLOBALS['ecs']->table('goods_cat') . " AS g WHERE $cats";
$extension_goods_array = $GLOBALS['db']->getCol($sql);
return db_create_in($extension_goods_array, 'g.goods_id');
}
这样操作,最后就在商品列表的时候。将该商品分类下商品和扩展分类下的商品。都取得了。综合显示。就可以达到ecshop商品扩展分类的目的。
最近更新
常用插件
- ecshop降价通知登记插件
ecshop降价通知登记插件,主要是为了方便某些客户,对商品价格要求比...
- ecshop通用红包编码
很多时候,为了结合促销,必须扩展一下ecshop的红包功能。ecshop的红包...
- ecshop购物车功能改进[插件
ecshop购物车功能改进[插件套餐]主要是我们最近开发工作和开发项目中。...
- ecshop红包修改成满多少减
我们在长期使用ecshop的时候,我们可以发现。ecshop的红包是一个非常强...
- ecshop分类树中统计商品数
最近忙于开发其他项目,在不少朋友不断要求和催促的情况下,做出了该小...