论坛风格切换
  • 9604阅读
  • 7回复

购物车类函数功能介绍 [复制链接]

上一主题 下一主题
 

发帖
6652
大洋
50212
贡献值
940
只看楼主 正序阅读 使用道具 楼主  发表于: 2011-11-20
zencart外贸建站外贸网站建站深圳外贸B2C建站外贸建站,信用卡通道集成,Amazon分类审核建站。请QQ联系
QQ:1023206115 QQ:2257583107 QQ:3038328260

购物车类是zencart系统的主要类之一,他主要作用就是记录用户购物的商品,为最后结账做准备,这个功能是非常熟悉的一个功能,也是每一种网店系统的最基本的一个类。下面就简单介绍一下zencart购物车这个类的信息。 
购物车类所在文件位置是:includes\classes\shopping_cart.php 
 
 
购物车类的主要元素: 
 
  var $contents;////购物车的内容,它是以一个数组的形式保存当前购物车内的所有商品 
  var $total;////购物车商品的所有价格总数 
  var $weight;///购物车内商品的总重量 
  var $cartID;////购物车的ID标识 
  var $content_type;///购物车内所有商品的类型 
  var $free_shipping_item;/////购物车内免运费商品的数量 
  var $free_shipping_weight;//购物车内所有免运费商品的重量 
  var $free_shipping_price;///购物车内所有免运费商品的价格 
 
 
购物车类中的函数功能: 
function shoppingCart()  
//购物车类的构造函数 
 
 
function restore_contents() 
//该函数主要是恢复用户的购物车的内容。如果用户登录了,添加了一些商品到购物车内,但是最后没有结账就下线,购物车会记录当前用户的购物车内容,然后下次再次登录,当结算的时候购物车会提示之前所添加到购物车的商品没有结算,然后会跟当前购物车的内容合并结算。该函数的作用就是恢复之前购物车的内容,并且跟当前购物车的内容合并。该函数没有返回值 
 
 
function reset($reset_database = false) 
///该函数作用是重新设置当前购物车的内容。默认参数$reset_database 为false,如果用户登录了,会把用户购物车的内容清空,包括数据库保存的内容。该函数没有返回值 
 
 
function add_cart($products_id, $qty = '1', $attributes = '', $notify = true) 
///该函数作用是添加一个商品到购物车内。如果用户已经登录,则该信息会添加到数据库。 
参数解释: 
$products_id :添加到购物车中商品的ID 
$qty: 添加商品的数量,默认添加一个 
$attributes:该商品的属性信息,该参数为数组。 
$notify:是否添加到当前通知信息的列表中,默认为true。 
该函数没有返回值 
 
 
function update_quantity($products_id, $quantity = '', $attributes = '') 
///更新购买商品的数量,如果用户登录了,该信息跟数据库内保存的记录同步更新 
参数解释: 
$products_id : 所更新的商品ID 
$quantity:更新的数量 
$attributes:商品的属性 
该函数没有返回值 
 
 
function cleanup() 
//该函数作用是清空购物车的内容,如果用户登录了,该操作跟用户数据库的记录同步更新。该函数没有返回值 
 
 
function count_contents() 
//该函数计算当前购物车内所有商品的数量。函数返回值为整数。 
该函数也是判断当前购物车内是否为空的一个标志,如果购物车为空,则该函数返回0,否则为一个大于1的整数 
 
 
function get_quantity($products_id) 
///该函数获取购物车内一个特定ID的商品的数量。返回一个整数值 
 
 
function in_cart($products_id) 
///判断一个特定ID的商品是否在当前购物车内。如果在,就返回true,否则返回false。 
 
 
function remove($products_id) 
///从购物车内删除一个商品,输入参数为商品的ID 
函数没有返回值 
 
 
function remove_all() 
///清空购物车的内容,跟reset()函数一样的操作。 
 
 
function get_product_id_list() 
//返回当前购物车内商品ID的列表,返回值为一个字符串,用逗号分隔的字符串。 
 
 
function calculate() 
//计算当前购物车内商品的价格和总量的总和。函数没有返回值 
 
 
function attributes_price($products_id) 
///该函数计算特定ID的商品所有属性的价格,比如某商品有多个属性,不同属性的价格都不一样的话,而如果用户选择了多个属性,该函数就是计算用户所选择的属性的价格总数,这个价格跟商品的价格不一样,后台添加商品的时候有该属性的价格设置。 
 
 
function attributes_price_onetime_charges($products_id, $qty) 
////计算特定id商品的特定数量的属性价格 
 
 
function attributes_weight($products_id) 
//计算特定ID的商品的属性的重量。 
 
 
function get_products($check_for_valid_cart = false) 
//返回购物车内所有商品的详细内容。返回一个数组。参数$check_for_valid_cart 是校验结算商品是否为有效的商品。比如该商品的状态是否为激活,如果不是激活状态就去掉该商品。默认为false,不校验。 
 
 
function show_total() 
///返回购物车内商品的所有价格 
 
 
function show_weight() 
///返回购物车内所有商品的重量。 
 
 
function generate_cart_id($length = 5) 
///产生一个购物车ID,参数$length 为该ID的长度。 
 
 
function get_content_type($gv_only = 'false') 
///返回购物车内商品的类型,参数$gv_only 为是否只是测试礼品券。默认false。 
 
 
function in_cart_mixed($products_id) 
///计算特定ID的商品的数量, 
 
 
function in_cart_check($check_what, $check_value='1') 
///计算某个特性的商品的数量,比如 product_is_free。$check_what 检验的字段,比如product_is_free字段,$check_value检验的值。 
使用方式,比如想返回购物车内商品有product_is_free属性并且值为1的商品的数量,可以这样调用该函数 
$_SESSION['cart']->in_cart_check('product_is_free','1'); 
 
 
function free_shipping_items() 
///返回免运费商品的数量。 
 
 
function free_shipping_prices() 
//返回免运费商品的价格 
 
 
function free_shipping_weight() 
///返回免运费商品的重量 
 
 
function actionUpdateProduct($goto, $parameters) 
////处理购物车更新商品操作。参数$goto 为更新成功后调转到的页面,$parameters调转页面的参数 
 
 
function actionAddProduct($goto, $parameters) 
///处理购物车添加商品的操作,参数同上 
 
 
function actionBuyNow($goto, $parameters) 
///处理购物车buy now的操作,参数同上 
 
 
function actionMultipleAddProduct($goto, $parameters) 
///处理购物车添加多个商品的操作,参数同上 
 
 
function actionNotify($goto, $parameters) 
//处理购物车通知操作,参数同上 
 
 
function actionNotifyRemove($goto, $parameters) 
///处理购物车notify remove操作,参数同上 
 

zencart外贸网站案例请看http://www.zencar-bbs.com/ 如果QQ在线联系没有反应,请直接加QQ:1023206115 或者 2257583107
关于zen cart的问题请发帖说明,不要发站内信,也不要QQ问,就是问了也没有人回复的。可以发好帖子,发帖子地址给我,叫我回复
!!!我要免费模板!!!
发帖
21
大洋
147
贡献值
4
只看该作者 7楼 发表于: 2012-05-07
zencart外贸建站外贸网站建站深圳外贸B2C建站外贸建站,信用卡通道集成,Amazon分类审核建站。请QQ联系
QQ:1023206115 QQ:2257583107 QQ:3038328260

现在看了,有收获


发帖
39
大洋
629
贡献值
0
只看该作者 6楼 发表于: 2012-04-02
zencart外贸建站外贸网站建站深圳外贸B2C建站外贸建站,信用卡通道集成,Amazon分类审核建站。请QQ联系
QQ:1023206115 QQ:2257583107 QQ:3038328260

后台添加一个属性,选择文本类型就可以了


发帖
58
大洋
141
贡献值
20
只看该作者 5楼 发表于: 2012-03-28
zencart外贸建站外贸网站建站深圳外贸B2C建站外贸建站,信用卡通道集成,Amazon分类审核建站。请QQ联系
QQ:1023206115 QQ:2257583107 QQ:3038328260

大侠 能说说如果我想添加一个商品定制属性。就是比如一件衣服买家可以自己输入腰围 臀围等等。我要怎么写入购物车和订单里面


发帖
13
大洋
216
贡献值
2
只看该作者 4楼 发表于: 2012-02-18
zencart外贸建站外贸网站建站深圳外贸B2C建站外贸建站,信用卡通道集成,Amazon分类审核建站。请QQ联系
QQ:1023206115 QQ:2257583107 QQ:3038328260


发帖
115
大洋
754
贡献值
16
只看该作者 地板  发表于: 2012-01-03
zencart外贸建站外贸网站建站深圳外贸B2C建站外贸建站,信用卡通道集成,Amazon分类审核建站。请QQ联系
QQ:1023206115 QQ:2257583107 QQ:3038328260

学习一下

www.xiawamall.com
发帖
14
大洋
191
贡献值
3
只看该作者 板凳  发表于: 2011-12-17
zencart外贸建站外贸网站建站深圳外贸B2C建站外贸建站,信用卡通道集成,Amazon分类审核建站。请QQ联系
QQ:1023206115 QQ:2257583107 QQ:3038328260

不错,学习了 

发帖
42
大洋
296
贡献值
12
只看该作者 沙发  发表于: 2011-11-21
zencart外贸建站外贸网站建站深圳外贸B2C建站外贸建站,信用卡通道集成,Amazon分类审核建站。请QQ联系
QQ:1023206115 QQ:2257583107 QQ:3038328260

谢谢斑竹大人,很全,不过有很多都没看懂。先MARK着,等到哪天要用了,再来看。。

快速回复
限80 字节
如果您在写长篇帖子又不马上发表,建议存为草稿。发帖请遵守版规(---删除纯表情和无意义内容,扣1分---)
 
上一个 下一个