如何显示客户在magento中购买的所有产品?

时间:2013-07-16 01:15:06

标签: php magento

我正在使用模型(app / mage.php)在magento根文件夹中创建一个外部脚本,我想显示由特定客户购买的项目。

我可以按特定订单获得,但我想为每个订单购买每件产品,我需要一个显示客户订单的部分。

我的意思是,例如,在我的magento外部页面上获取一个名为“Your Books”的部分,并显示客户购买的所有书籍。

由于

2 个答案:

答案 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();
    }
}