![](/img/trans.png)
[英]how do I get product data when adding to cart and listening for the “checkout_cart_product_add_after” event
[英]When Product adding to cart how to get category name
使用Magento 1.8v。
在我的定制中,当客户将产品添加到购物车时。 某些产品的数量不能更改(即,数量是固定的),而其他一些产品的数量可以更改。
范例:
cat1
products
cat2
subcat
subcat
例如:cat1产品允许更改数量,因此,当添加到购物车中时,类别将为1,不允许剩余类别,因此它是库存项目值。
我正在尝试在此类Mage / Checkout / Model / Cart.php中的以下代码,但抛出错误
$categoryIds=$this->getProduct()->getCategoryIds($productid);
foreach($categoryIds as $categoryId)
$category = Mage::getModel('catalog/category')->load($categoryId);
if ($category->getName() == 'cat1')
$minimumQty = $product->getStockItem()->getMinSaleQty();
else if($category->getName() == 'cat2')
minimumQty=stock_item->loadByProduct($product)->getQty();
如何获得类别名称?
我试图在本地安装上重新创建您的问题。
我做了如下
在文件app\\design\\frontend\\base\\default\\template\\checkout\\cart\\item\\default.phtml
中,其中包含产品的输入框,我在td中添加了以下代码:
<?php
$categoryIds = $this->getProduct()->getCategoryIds($_item->getId());
foreach($categoryIds as $categoryId) {
$category = Mage::getModel('catalog/category')->load($categoryId);
if($category->getId()=='3') {
$minimumQty = $this->getProduct()->getStockItem()->getMinSaleQty();
} else {
$minimumQty = $this->getQty();
}
}
?>
<input name="cart[<?php echo $_item->getId() ?>][qty]" value="<?php echo $minimumQty ?>" size="4" title="<?php echo $this->__('Qty') ?>" class="input-text qty" maxlength="12" />
我的类别是3,当我运行文件时,它正确显示3,这是添加到此产品的购物车中的最小数量。
虽然我想知道因为magento已经给出了关于这种情况的错误消息,即
有些产品无法按要求的数量订购。
购物车上方
- 购买的最小数量是3。
产品名称下方
为什么需要这样做?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.