我在正在开发的站点的本地实例的 list.phtml 页面上收到以下错误--->
Fatal error: Call to amember function getSource() on a non-object in
D:\wamp\www\magento\app\code\core\Mage\Catalog\Model\Product.php on line 1389
我在正在开发的站点的本地实例的 list.phtml 页面上收到以下错误--->
Fatal error: Call to amember function getSource() on a non-object in
D:\wamp\www\magento\app\code\core\Mage\Catalog\Model\Product.php on line 1389
Fatal error: Call to a member function getSource() on a non-object in
\www\magento\app\code\core\Mage\Catalog\Model\Product.php on line 1389
我收到此错误是因为某些属性未在管理面板中创建。但是使用$_product->getAttributeText('preferred')
值是在 list.phtml 中获取的。
当我创建这些属性并将它们分配给默认属性集时,问题就解决了。
找到以下代码
public function getAttributeText($attributeCode)
{
return $this->getResource()
->getAttribute($attributeCode)
->getSource()
->getOptionText($this->getData($attributeCode));
}
并替换为
public function getAttributeText($attributeCode)
{
if ($attribute = $this->getResource()->getAttribute($attributeCode)) {
return
$attribute->getSource()
->getOptionText($this->getData($attributeCode));
} else {
//Mage::log(\'attributes-errors.log\',$attributeCode);
return false;
}
}
来源:http ://www.ubertheme.com/question/solving-error-fatal-error-call-to-a-member-function-getsource/
请获取更多提示属性如何完成
当我创建这些属性并将 tem 分配给默认属性集时,问题就解决了。