2011-02-01 36 views
1

在我的網站上,我使用hook_add_to_cart_data爲項目添加一些額外的自定義。當添加兩個相同的產品,但有不同的$data時,它看起來像ubercart壓縮舊的$data並堆疊購物車中的項目,更新$qty而不是添加一個新項目。ubercart cart「stacking」

我該如何告訴ubercart將新物品和舊物品視爲購物車中的不同物品,這樣它們就不會堆疊起來,我還可以控制這種行爲嗎?

回答

1

不,這是不應該,看到uc_cart.module uc_cart_get_contents功能,列#1358:

for ($i = 0; $i < count($items[$cid]); $i++) { 
    if ($items[$cid][$i]->nid == $item->nid && $items[$cid][$i]->data == $item->data) { 
     $items[$cid][$i]->qty += $item->qty; 
     continue 2; 
    } 
    } 

一個原因的:一些其他模塊合併(或乾淨的),這些數據$兩種產品,前調用函數uc_cart_get_contentsuc_cart_add_item函數中,在hook_add_to_cart_data實現中。