访问success.phtml上的自定义属性

时间:2013-09-16 11:31:46

标签: php magento e-commerce

我创建了一个自定义属性来跟踪每个项目的利润。

出于分析目的,我需要将它添加到JS中的变量并将其附加到url字符串。

不幸的是,我似乎无法访问该属性,每次尝试回显该值时,都会返回null。

这是代码;

$orderObj = Mage::getModel(’sales/order’)->loadByIncrementId($this->getOrderId()); 
$orderItems = $orderObj->getAllItems(); 
$basket = ‘’; 
$mail_body = ‘’; 
foreach($orderItems as $item) 
{ 
$basket .= $item->getSku() .’|’. number_format($item->getRowTotal(), 2, ‘.’, ‘,’) .’|’. round($item->getQtyOrdered()) . ‘,’; 
}

foreach($orderItems as $item) { 
$product_item = Mage::getModel(’catalog/product’)->load($this->getProductId()); 
$mail_body .= $product_item->getAttributeText(’profit’); 
$mail_body .= “---\n\n”; 
}

我试图开始工作的主要代码是在foreach中。

为什么这不会返回价值的任何想法?

2 个答案:

答案 0 :(得分:1)

尝试

$order = Mage::getModel('sales/order')->loadByIncrementId($this->getOrderId());
$items = $order->getItemsCollection();

foreach($items as $item){
  $product = Mage::getModel('catalog/product')->load($item->getProductId());
  echo $product->getAttributeText('profit');
}

答案 1 :(得分:0)

$custom = Mage::getModel('catalog/product')->load($item->getProductId());

echo $custom->getAttributeText('profit');

OR

这是工作解决方案,它很简单,但我不明白:

<?php
$custom = Mage::getModel('catalog/product')->load($_item->getProductId());
echo $custom->getAttributeText('profit');
?>

希望这对您有所帮助。