1

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

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

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

谢谢

4

2 回答 2

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

希望它会帮助你。

于 2013-07-16T03:40:47.180 回答
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();
    }
}
于 2015-11-27T03:36:57.603 回答