使用Magento 1.8v。
在我的定制中,当客户将产品添加到购物车时。有些产品的数量不应该是可更改的(即数量是固定的),而其他一些产品的数量可以更改。
例:
cat1
products
cat2
subcat
subcat
例如: Cat1 产品允许数量更改,因此当添加到购物车时,它将是 1,并且不允许剩余类别,因此它是库存项目价值。
我正在尝试在此类中使用以下代码 法师/结帐/模型/购物车.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();
如何获取类别名称?
我试图在本地安装上重现您的问题。
我做了如下工作
在包含产品输入框的td的文件app'design'frontend'base'default'template'checkout'cart'item'default.phtml
中,我添加了以下代码:
<?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。
以下产品名称
你为什么需要这样做?