1. Tworzymy plik:
[Namespace]/[Module]/Block/[Adminhtml]/template/grid/renderer/Image.php
2. Kod dla powyższego pliku:
Kod: Zaznacz cały
class [Namespace]_[Module]_Block_[Adminhtml]_Template_Grid_Renderer_Image extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Action {
public function render(Varien_Object $row)
{
return $this->_getValue($row);
}
public function _getValue(Varien_Object $row)
{
if ($getter = $this->getColumn()->getGetter()) {
$val = $row->$getter();
}
$val = $row->getData($this->getColumn()->getIndex());
$val = str_replace("no_selection", "", $val);
$url = Mage::getBaseUrl('media') . DS . $val;
$out = $val. '<center><a href="'.$_url.'" target="_blank" id="imageurl">';
$out .= "<img src=". $url ." width='60px' ";
$out .=" />";
$out .= '</a></center>';
return $out;
}
}
3. W gridzie gdzie chcesz wyświetlić obrazek możesz teraz użyć renderer który utworzyliśmy:
Kod: Zaznacz cały
$this->addColumn('image1', array(
'header' => Mage::helper('attributeimages')->__('Image 1'),
'align' => 'left',
'index' => 'image1',
'renderer' => '[module]/[adminhtml]_template_grid_renderer_image',));
Zauważ opcję 'renderer'.