2011-06-18 126 views
2

我們銷售的是現成包裝(總重量18公斤),其中包括幾種食品。但是我們想爲我們的客戶做一件特別的事情,他們應該通過選擇我們的產品系列來製作包裝。在購物車中增加產品數量

因此,他們應該首先製作一個包含選定產品的基礎包,然後他們可以在結帳部分中將此包裝複製。

我想要做什麼,修改magento的checkout部分,將選定的產品與文本字段相乘,並按按鈕計算總量。

像圖像...

enter image description here

有誰幫我做出這樣的事?

回答

3

就我個人而言,我會用原型中的前端代碼來做這件事。原因是你將不得不修改你的模板,並且你的客戶無論如何都需要javascript來啓動你的購物車。

一般的做法是讓您的應用按鈕的onclick將您的數量文本框的id.value作爲參考,然後使用購物車頁面中的數量類更新所有內容。然後讓該腳本調用與標準更新數量按鈕相同的更新網址。

+0

我正在嘗試相同的方法,我們認爲同樣的事情:) –

1

這是我的建議:在你的模塊中,你創建一個觀察者,聽取controller_action_predispatch_checkout_cart_index。在你的觀察者的方法中,你可以用$itemCollection = Mage::getSingleton('checkout/session')->getQuote()->getAllItems();獲得購物車中的物品。現在你只需要遍歷這個條件,並設置數量:

foreach ($itemCollection as $item) { 
    $item->setQty(here_the_integer_you_want); 
} 

編輯:對不起,沒有看過有關輸入和按鈕。
對於輸入和按鈕,您只需編輯模板(app/design/frontend/base/default/template/checkout/cart.phtml)。或者,如果你想讓tom做一個獨立的擴展,你可以通過觀察者添加它們。檢查出inchoo's post。你剛纔創建的這個表單會調用你的控制器/動作,在那裏你可以設置物品的數量(所以不需要觀察者了),用我之前提到的相同技術。

讓我知道如果這不明確。
HTH

+0

非常感謝你@OSDave,我會嘗試實現JavaScript方式,因爲我沒有太多的時間來實現擴展。 –