繁体   English   中英

产品添加到购物车时如何获取类别名称

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM