【发布时间】:2014-06-09 11:37:24
【问题描述】:
我正在编写一个自定义模块,用户可以输入每个产品的运费。
我为我的所有产品添加了一个名为“initial_shipping_charge”的自定义变量。在我的“获取运费”功能中,我试图遍历我的购物篮中的产品并获取变量(这些将被添加到总体总数中)。
var_dump($shipping_price_initial);行返回 NULL 而不是它包含的变量 - 知道为什么这不起作用吗?
提前致谢。
protected function _getStandardShippingRate()
{
$rate = Mage::getModel('shipping/rate_result_method');
/* @var $rate Mage_Shipping_Model_Rate_Result_Method */
$rate->setCarrier($this->_code);
/**
* getConfigData(config_key) returns the configuration value for the
* carriers/[carrier_code]/[config_key]
*/
$shipping_price_value = rand(10 , 50);
//Create a basket session object
$session = Mage::getSingleton('checkout/session');
foreach ($session->getQuote()->getAllItems() as $item) {
$item_id = $item->getId();
$_basketProduct = Mage::getModel('catalog/product')->load($item_id);
$shipping_price_initial = $_basketProduct->getAttribute('initial_shipping_charge');
var_dump($shipping_price_initial);
}
$rate->setCarrierTitle($this->getConfigData('title'));
$rate->setMethod('standand');
$rate->setMethodTitle('Standard');
$rate->setPrice($shipping_price_value);
$rate->setCost(0);
return $rate;
}
【问题讨论】:
-
如果您在加载产品(并且显然启用了系统日志)后执行
Mage::log($_basketProduct->getData()),您能看到正确的值吗?
标签: php magento magento-1.8