1.找到app/code/core/Mage/Adminhtml/Block/Sales/Order/Grid.php
中的_prepareCollection()方法,大约57行
修改为:
protected function _prepareCollection()
{
$collection = Mage::getResourceModel($this->_getCollectionClass());
$collection->getSelect()->joinLeft('sales_flat_order_address', 'main_table.entity_id = sales_flat_order_address.parent_id',array('ShippingAddress'=>new Zend_Db_Expr('CONCAT_WS(", ",sales_flat_order_address.street,sales_flat_order_address.city,sales_flat_order_address.region,sales_flat_order_address.postcode,sales_flat_order_address.telephone)')) );
$collection->getSelect()->where('sales_flat_order_address.address_type="shipping"');//address_type="shipping"
//echo $collection->getSelectSql(true);
$this->setCollection($collection);
return parent::_prepareCollection();
}2.在_prepareColumns()方法里添加如下:
/*Shipping Address*/
$this->addColumn('Shipping Address', array(
'header' => Mage::helper('Sales')->__('Shipping Address'),
'index' => 'ShippingAddress',
));
本文介绍如何在Magento的订单列表中增加显示收货地址的功能。通过修改Grid.php文件中的_prepareCollection()方法,实现从数据库中获取并展示每个订单对应的收货地址信息。

被折叠的 条评论
为什么被折叠?



