doumingchen3628 2013-06-19 13:14
浏览 13
已采纳

显示Magento自定义(是/否)success.phtml中的属性值

In a Magento webstore I am creating people can order PDF products which they will receive by email. An external system will handle these emails, this isn't part of the Magento store. On the success.phtml page I'd like to add a message for the customer if he/she has ordered a PDF product saying something like "thanks for ordering, you should get the product in your inbox soon".

I'm using the following code to get info on the order:

$order_id = Mage::getSingleton('checkout/session')->getLastRealOrderId();
$order = Mage::getModel('sales/order')->loadByIncrementId($order_id);

$items = $order->getAllVisibleItems();
$itemcount=count($items);

foreach ($items as $itemId => $item)
{
    echo 'itemcount: '.$itemcount.'<br />';
    echo 'itemname: '.$item->getName().'<br />';
    echo 'itemprice: '.$item->getPrice().'<br />';
    echo 'itemsku: '.$item->getSku().'<br />';
    echo 'id: '.$item->getProductId().'<br />';
    echo 'qty: '.$item->getQtyToInvoice().'<br />';
    echo 'pdf: '.$item->getData('pdf_ticket');
}

Everything gets put on the success page, except for my custom attribute pdf_ticket. I've also tried getPdfTicket(). The attribute is a Yes/No attribute. After this works I should be able to do something like if($pdf == 'Yes'){ echo 'thanks!...' }

  • 写回答

1条回答 默认 最新

  • dongpankao6133 2013-06-19 13:23
    关注

    I've found an answer that worked for me by Thomas Nielsen. Question >

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

    I'm not really sure WHY this works. So if anyone could clarify this for me, it would be great!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?