Magento后台订单列表 显示产品图片
2015-04-01 11:45
411 查看
注意:产品图片能成功显示出来,但分页功能被破坏,目前没有找到解决方法
订单Grid的主表:sales_flat_order_grid
订单详细表:sales_flat_order_item
产品表:catalog_product_entity
做关联查询可以得到product_id
1.#打开
\app\code\core\Mage\Adminhtml\Block\Sales\Order\Grid.php
#找到 protected function _prepareCollection()方法,大约57行
修改后方法如下:
2.#找到 protected function _prepareColumns()方法,大约84行
添加如下代码:
3.在 \app\code\core\Mage\Adminhtml\Block\Widget\Grid\Column\Renderer目录下,新建一个 Image.php
Image.php代码如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/14/4b9aad405440b8dcd17c3ad5568e452e)
但是分页功能被破坏了,到目前还没有找到解决的办法。
订单Grid的主表:sales_flat_order_grid
订单详细表:sales_flat_order_item
产品表:catalog_product_entity
做关联查询可以得到product_id
1.#打开
\app\code\core\Mage\Adminhtml\Block\Sales\Order\Grid.php
#找到 protected function _prepareCollection()方法,大约57行
修改后方法如下:
protected function _prepareCollection() { $collection = Mage::getResourceModel($this->_getCollectionClass()); $collection->getSelect()->joinLeft('sales_flat_order_item','main_table.entity_id = sales_flat_order_item.order_id'); $collection->getSelect()->joinLeft('catalog_product_entity', '`catalog_product_entity`.entity_id = `sales_flat_order_item`.`product_id`', array('product_id' => new Zend_Db_Expr('group_concat(`catalog_product_entity`.entity_id SEPARATOR ", ")'))); $collection->getSelect()->group('main_table.entity_id'); $this->setCollection($collection); return parent::_prepareCollection(); }
2.#找到 protected function _prepareColumns()方法,大约84行
添加如下代码:
$this->addColumn('product_pic', array( 'header' => Mage::helper('catalog')->__('Pic'), 'index' => 'product_id',//product_id 上面查询的字段 'renderer'=>'Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Image',//对应一个名为这个的类 'filter'=>false, //搜索过滤 'sortable'=>false //排序 ));
3.在 \app\code\core\Mage\Adminhtml\Block\Widget\Grid\Column\Renderer目录下,新建一个 Image.php
Image.php代码如下:
<?php class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Image extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract { public function render(Varien_Object $row) { //一个订单有可能有多个产品,在做关联查询的时候product_id被group_concat(`catalog_product_entity`.entity_id SEPARATOR ", ")') //所以此处分隔为数组 $product_ids =explode(',',$row->getData('product_id')); $html = ''; foreach($product_ids as $id){ //然后根据产品id获得图片 $imgurl= Mage::getBaseUrl('media').'catalog/product'.Mage::getModel('catalog/product')->load($id)->getImage(); //拼接html $html .= '<img src="'.$imgurl.'" width="50"/>'; } return $html; } }到这一步后,订单列表就可显示产品图片了
但是分页功能被破坏了,到目前还没有找到解决的办法。
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/wail.gif)
相关文章推荐
- Magento后台订单显示产品图片的修改方法
- Magento后台订单显示产品图片的修改方法
- MAGENTO后台订单显示产品图片的修改方法
- magento 后台订单显示产品小图片
- Zen Cart后台订单中显示产品图片
- ZenCart后台订单详细页显示产品图片和链接
- Zencart畅销产品(bestsellers)与后台订单显示图片
- Zencart畅销产品(bestsellers)与后台订单显示图片
- 让Magento后台可以看到订单产品图片
- ZenCart后台订单详细页显示产品图片和链接
- Magento后台订单页面显示产品url地址
- Magento 后台订单显示图片
- zencart后台订单详细页显示产品图片和链接
- Zen cart后台订单显示产品图片,zencart
- Magento 在后台订单显示产品地址
- 自定义 magento 后台订单显示内容(grid、view视图修改)
- 在ECSHOP后台的订单列表中显示配送方式
- 如何修改Magento前台显示的产品图片的尺寸大小
- 牛腩购物32:完成整个网站的功能制作(后台产品列表,多表查询+分页),产品修改保存,图片的上传保存
- 如何修改magento前台显示的产品图片的大小尺寸