我正在使用magento 1.4
我通过创建一个脚本来超越购物车价格 /httpdocs/app/code/local/Mage/Sales/Model/Quote/Item.php
在Item.php上,我有这段代码:
public function setPrice($price) //set the unit price
{
$qty = $this->getQty;
$_helper = Mage::helper('catalog/output');
Mage::getModel('catalog/product')->load($_product->getId);
$_product = $this->getProduct();
$childProducts = Mage::getModel('catalog/product_type_configurable')->getUsedProducts(null,$_product);
foreach($childProducts as $_attribute){
$tierPrices = $_helper->productAttribute($_attribute,$_attribute->getFormatedTierPrice());
foreach($tierPrices as $tierPrice){
if($qty == $tierPrice['price_qty']){
$price = $tierPrice['price'];
break;
}
}
}
$this->price = $price;
}
每当我向购物车添加产品时,它应该进入购物车页面,但现在发生的事情是我只是得到一个空白的白页。 当我还检查我的FireBug控制台时,出现网络错误:500内部服务器错误。
我认为发生这种情况的原因是我的代码在这一行:
![$childProducts = Mage::getModel('catalog/product_type_configurable')->getUsedProducts(null,$_product);][1]
当我试图取消注释那个时,一切都没问题。
我附上了一些图片。
请告诉我解决方法。非常感谢您的帮助。 谢谢!
答案 0 :(得分:0)
您没有将产品分配给变量似乎很奇怪,但不管怎样,在尝试通过首先设置商店ID来加载特定产品时,我运气最好。这是一个例子。
$load_product = Mage::getModel('catalog/product')
->setStoreId(Mage::app()>getStore()->getId())
->load($_product->getID);
拯救旅行进入Magento的土地,这是强大的,但却是无情的!