[英]Prestashop, check which action is triggered on a cart (add / update), from hookActionCartSave
我正在為客戶創建一個 Prestashop 自定義掛鈎,以便在將產品添加到購物車時將信息發送到 API。 我正在使用 hookActionCartSave,但是當更新購物車或添加新產品時會觸發此鈎子。 所以我的問題是,如何檢查觸發了哪些操作並僅在添加新產品時執行我的代碼。 你會在下面找到我的代碼。 謝謝您的幫助。
public function hookActionCartSave($params)
{
if (!Validate::isLoadedObject($this->context->cart) || !Validate::isLoadedObject($params['cart'])) {
return false;
} else {
$cart = $params['cart'] ;
$products = $cart->getProducts();
$product_count = 0;
//get products details
$products_details = array();
foreach($products as $item){
$products_details[] = array(
"name" => $item->product_name,
"product_id" => $item->product_id,
"price" => $item->total_price_tax_incl,
"quantity" => $item->product_quantity
);
$product_count = $product_count + $item->product_quantity ;
}
$productsJsonData = json_encode($products_details);
$last_cart_product = $cart->getLastProduct();
$last_added_product = new Product($last_cart_product['id_product']);
// send data to my API
}
我認為您可以使用 actionObjectCartAddAfter 掛鈎來做您想做的事。
如果您想了解有關此掛鈎的更多信息,可以在 /classes/ObjectModel.php 文件中添加 function 中查看。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.