我要刪除Magento中所有客戶的所有購物車物品(產品已添加到購物車)。如何刪除Magento中所有客戶的所有購物車項目?
我該怎麼做?
詳細: -
想,我總註冊用戶10在我的店。他們可能會將物品(產品)添加到購物車中。我想清除所有10位註冊客戶添加到購物車的所有商品。
我要刪除Magento中所有客戶的所有購物車物品(產品已添加到購物車)。如何刪除Magento中所有客戶的所有購物車項目?
我該怎麼做?
詳細: -
想,我總註冊用戶10在我的店。他們可能會將物品(產品)添加到購物車中。我想清除所有10位註冊客戶添加到購物車的所有商品。
我的第一個猜測會是這樣的,
$items = Mage::getResourceModel('sales/quote_item_collection');
foreach ($items as $item) {
$item->delete();
}
的購物車項目被存儲爲「報價」的一部分。像這樣循環遍歷它們可能會很慢,在SQL中執行它更快但不安全。
TRUNCATE `sales_flat_quote_item`;
這個查詢似乎更安全:DELETE FROM'sales_flat_quote' WHERE is_active = 1; – 2014-08-27 10:07:00
'DELETE FROM sales_flat_quote'也會導致級聯刪除,刪除客戶可能已部分填寫的地址,付款和運輸選項。爲了更正確,它應該是'DELETE FROM sales_flat_quote_item INNER JOIN sales_flat_quote ON quote_id = entity_id WHERE is_active = 1' – clockworkgeek 2014-10-06 18:36:55
我知道,這與您的問題沒有直接關係,但可能有所幫助。
Inchoo幾天前發表了一篇文章,在購物車頁面上放置了「購物車清空」鏈接。
我不願意建議SQL答案,因爲它無法調用其他地方可能需要的事件。 Inchoo的方法使用具有這種事件的'removeItem',這就是爲什麼它是更好的方法。 – clockworkgeek 2011-03-28 12:13:18
Inchoo的模塊適用於個人顧客可以清空購物車的顧客。但是,我想一次刪除所有客戶的購物車物品。因此,我想用SQL去。 – 2011-03-29 12:24:13
您的意思是所有的購物車項目? – 2011-03-27 15:42:25
我想幫助你,但至少有5種不同的方式來解釋這個問題。 – 2011-03-27 16:39:59
我編輯了這個問題。希望現在很清楚。 – 2011-03-27 16:44:56