Magento模块开发的一般写法都是 Magento特有的MVC结构,如果你熟悉API或者想外部调用订单的信息,那么这篇文章可能会适合你

凡是数据处理都会有个数据逻辑处理,所以首先获取订单对象

    $showProductNum = 6;
    
    $orders = Mage::getResourceModel ( 'sales/order_collection' )
        ->addAttributeToFilter ( 'state', array ('in' => Mage::getSingleton ( 'sales/order_config' )
        ->getVisibleOnFrontStates () ) )
        ->addAttributeToSort ( 'created_at', 'desc' )
        ->setpage(1,$showProductNum);
    
    $this->setOrders ($orders);

这里定义一个showProductNum变量对显示个数加以控制,把获取Mage_Sales_Model_Mysql4_Order_Collection的订单对象加以筛选并存在orders变量中。最新订单的关键在于create_at字段按desc的降序来排列。

然后接下来可以显示了:

                    <?php foreach ($this->getOrders() as $order): ?>
                            <?php $products = $order->getParentItemsRandomCollection($showProductNum);?>
                            <?php foreach ($products as $product):?>
                                <li>
                                    <img height="14" width="13" class="fl" alt="" src="images/icon_car_gray.gif">  <a href="<?php echo $product->getProduct()->getProductUrl(); ?>"><?php echo $this->stripTags($product->getName(), null, true) ?></a>
                                    <br><font color="#ff0000"><?php echo "ship to ".$order->getCustomerName();echo ",".$order->getShippingAddress()->getCity();?></font>
                                </li> 
                            <?php endforeach;?>
                    <?php endforeach;?>

视图层中的函数命名比较容易明白它的坐用,都来自对应的类,具体可以查看所对应的API,demo是怎样的,如何改变数据输出,大家可以玩玩!外部如何调用可以参考我之前的文章……

更多推荐