【发布时间】:2014-01-15 06:54:57
【问题描述】:
我正在尝试通过产品 id 获取客户的 sku,但直到现在我才能得到它。我尝试了一个带 sku 的代码,但它并没有带来客户购买的所有产品
// 创建订单集合对象 $orders = Mage::getResourceModel('sales/order_collection')->addFieldToSelect('*')->addFieldToFilter('customer_id', $custId);
$order_id= $orders->getFirstItem()->getId();
$order = Mage::getModel('sales/order')->load($order_id);
$items = $order->getAllItems();
$itemcount=count($items);
$name=array();
$unitPrice=array();
$sku=array();
$ids=array();
$qty=array();
foreach ($items as $itemId => $item)
{
echo"<h5>You have following:". $name[] = $item->getName()."</h5>";
$unitPrice[]=$item->getPrice();
echo"<h5>SKU of your Products:" .$sku[]=$item->getSku()."</h5>";
echo"<h5>You have following:".$ids[]=$item->getProductId()."</h5>";
echo"<h5>You have following:".$qty[]=$item->getQtyToInvoice()."</h5>";
}
echo "<h4>Payment Details :</h4>";
}
?>
`
【问题讨论】:
-
您的代码正在运行。你能打印其他属性(名称、数量、id)吗?检查错别字等。
-
是的,我知道它的工作原理,如果你尽可能地下了一些订单,它不会提供所有产品及其 sku。尝试使用 4 或 5 个产品结帐并查看输出
-
它工作正常。它应该打印客户第一个订单的所有产品。
-
bt 这不是我的第一个订单中有 3 个项目,它只显示 2 个。它没有显示第 3 个。如果我想显示所有订单产品项目,那么你能告诉我我必须做的更改吗?
-
也许您更改了产品上的某些内容 - 可能禁用/删除了它?如果它显示 2 个产品,它应该显示所有这些产品。我尝试了 14 种产品的订单,它有效。
标签: magento