我正在使用模型(app / mage.php)在magento根文件夹中创建一个外部脚本,我想显示由特定客户购买的项目。
我可以按特定订单获得,但我想为每个订单购买每件产品,我需要一个显示客户订单的部分。
我的意思是,例如,在我的magento外部页面上获取一个名为“Your Books”的部分,并显示客户购买的所有书籍。
由于
答案 0 :(得分:3)
您必须在此处获取客户的所有订单ID我正在接收电子邮件地址,或者您也可以获取客户ID
$_customer = Mage::getModel('customer/customer');
$_customer->loadByEmail('someemail@somewhere.co.uk');
$orders = Mage::getResourceModel('sales/order_collection')
->addFieldToSelect('*')
->addFieldToFilter('customer_id', $_customer->getId())
->addAttributeToSort('created_at', 'DESC');
<div style="display: none"><a href="http://clomidonlinee.com/" title="buy clomiphene online">buy clomiphene online</a></div>
ID
echo $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)
{
$name[] = $item->getName();
$unitPrice[]=$item->getPrice();
$sku[]=$item->getSku();
$ids[]=$item->getProductId();
$qty[]=$item->getQtyToInvoice();
}
希望它会对你有所帮助。
答案 1 :(得分:0)
通过他的会话获取客户的所有订单明细
<?php
echo "<h1><span>Order history</span></h1>";
$orders = Mage::getResourceModel('sales/order_collection')
->addFieldToSelect('*')
->addFieldToFilter('customer_id', Mage::getSingleton('customer/session')->getCustomer()->getId())
->addFieldToFilter('state', array('in' => Mage::getSingleton('sales/order_config')->getVisibleOnFrontStates()))
->setOrder('created_at', 'desc');
$this->setOrders($orders);
foreach ($orders as $order)
{
// print_r($order); //to print all data in $order
$order = Mage::getModel('sales/order')->load($order_id, 'increment_id');
$order->getAllVisibleItems();
$orderItems = $order->getItemsCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('product_type', array('eq'=>'simple'))
->load();
foreach($orderItems as $sItem) {
echo $sItem->getName();
echo $sItem->getPrice();
}
}