从Mage_Sales_Model_Order_Item对象获取自定义属性

Inf*_*rid 5 magento

我正在写一个Observer来管理订单的项目,我需要根据一些自定义属性为每个订单发送一封电子邮件.

item对象是Mage_Sales_Model_Order_Item并且搜索我尝试过getData('my_code'),getCustomAttribute,getAttributeText等方法但没有成功.

我需要获取类别,大小,颜色和一些自定义属性......这里是我的小代码

class Example_OrderMod_Model_Observer{

  public function doSomething($observer){
    $order = $observer->getEvent()->getOrder();

    $id_ordine = $order->getRealOrderId();
    $cliente = $observer->getEvent()->getOrder()->getCustomerName();

    foreach ($order->getAllItems() as $item) {
    //$item is an instance of Mage_Sales_Model_Order_Item

      $quantita =  $item->getQtyOrdered();
      $codice_giglio =  $item->getSku();

      //echo $item->getData('size');
      var_dump($item->getAttributeText('size'));
      var_dump($item->getProductOptionByCode('size'));
      var_dump($item->getProductOptionByCode('famiglia'));

    }
//    die();
  }
}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

非常感谢

Pra*_*ski 6

您可能希望加载产品对象,然后从该对象获取数据.这将允许您使用您正在寻找的所有方法:

$product = Mage::getModel('catalog/product')->load($item->getProductId());
$size = $product->getAttributeText('size');
Run Code Online (Sandbox Code Playgroud)