當我在後端添加新產品時,我被要求選擇「相關產品」,「向上銷售」和「交叉銷售」。我希望能夠在後端看到縮略圖,因此我可以快速選擇它們,而不是試圖通過名稱/ sku來選擇它們。在Magento後端的「相關產品」上添加縮略圖
回答
您可能可以重寫一個網格控制器,該網格控制器顯示管理員該區域中的產品,並使用另一個字段向您顯示產品圖像。
對於adminhtml網格,渲染器圖像不存在。你必須重寫這個。
編輯文件app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Related.php
附近的管線140,該代碼下:
$this->addColumn('entity_id', array(
'header' => Mage::helper('catalog')->__('ID'),
'sortable' => true,
'width' => 60,
'index' => 'entity_id'
));
粘貼此代碼:
$this->addColumn('image', array(
'header'=> Mage::helper('catalog')->__('Image'),
'type' => 'image',
'width' => '60px',
'index' => 'image',
));
編輯文件app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column.php
第271行,添加此代碼重寫渲染器:
case 'image':
$rendererClass = 'adminhtml/widget_grid_column_renderer_image';
break;
和附近的線路348增加(對過濾器):
case 'image':
$filterClass = 'adminhtml/widget_grid_column_filter_image';
break;
現在,你必須創建文件app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Image.php
(如果不存在的話)與此內容的代碼:
<?php class Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Image extends
Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract {
protected static $showImagesUrl = null;
protected static $showByDefault = null;
protected static $width = null;
protected static $height = null;
public function __construct() {
if(self::$showImagesUrl == null)
self::$showImagesUrl = 1;
if(self::$showByDefault == null)
self::$showByDefault = 1;
if(self::$width == null)
self::$width = '60px';
if(self::$height == null)
self::$height = '60px';
}
/**
* Renders grid column
*
* @param Varien_Object $row
* @return string
*/
public function render(Varien_Object $row) {
return $this->_getValue($row);
}
/*
public function renderProperty(Varien_Object $row) {
$val = $row->getData($this->getColumn()->getIndex());
$val = Mage::helper('imagebyurl')->getImageUrl($val);
$out = parent::renderProperty(). ' onclick="showImage('.$val.')" ';
return $out;
}
*/
protected function _getValue(Varien_Object $row) {
//$row->getEntityId();
$dored = false;
if ($getter = $this->getColumn()->getGetter()) {
$val = $row->$getter();
}
$val = $val2 = $row->getData($this->getColumn()->getIndex());
$val = str_replace("no_selection", "", $val);
$val2 = str_replace("no_selection", "", $val2);
$url = Mage::helper('adminhtml')->getImageUrl($val);
if(!Mage::helper('adminhtml')->getFileExists($val)) {
$dored =true;
$val .= "[!]";
}
if(strpos($val, "placeholder/")) {
$dored = true;
}
$filename = substr($val2, strrpos($val2, "/")+1,
strlen($val2)-strrpos($val2, "/")-1);
$_url = $url;
//echo $_SERVER['SERVER_NAME'];
if(!self::$showImagesUrl) $filename = '';
if($dored) {
$val = "<span style=\"color:red\" id=\"img\">$filename</span>";
}
else {
$val = "<span style=\"color:#888;\">". $filename ."</span>";
}
if(empty($val2)) {
$out = "<center>" . $this->__("(no image)") . "</center>";
}
else {
$out = $val. '<center><a href="'.$_url.'" target="_blank"
id="imageurl">';
}
if(self::$showByDefault && !empty($val2)) {
$out .= "<img src=". $url ." width='60px' ";
$out .=" />";
}
$out .= '</a></center>';
return $out;
}
}
(您可以通過任何寬度代替width=60px
你想或與此內容的代碼添加高度)
現在,你必須創建文件app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Filter/Image.php
(如果不存在):
<?php class Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Image extends Mage_Adminhtml_Block_Widget_Grid_Column_Filter_Text { }
不要忘記刷新緩存。
現在您必須在相關網格中看到圖像列。
你可以做同樣的事情app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Upsell.php
和app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Crosssell.php
感謝您提供優秀的技巧大流士。但是,不要編輯/ app/code/core /中的文件,而應該真的在/ app/code/local /中複製它們以防止升級破壞您的更改。 – clockworkgeek 2011-01-04 09:43:04
優秀的描述和解決方案。豎起大拇指。 – James 2013-01-08 07:13:26
- 1. Magento - 使用分組產品縮略圖顯示「向上銷售」縮略圖
- 2. magento添加產品
- 3. 在magento的可配置產品上顯示相關產品的圖像
- 4. Magento:從前端形式添加產品
- 5. Magento相關產品Sidebar
- 6. Magento相關產品選項
- 7. Magento Show相關產品圖像
- 8. Magento:在可配置產品上顯示相關產品的圖像
- 9. Magento - 向追加銷售/相關產品添加數量框
- 10. WooCommerce產品縮略圖
- 11. 如何在magento管理端添加新產品添加頁面?
- 12. 添加縮略圖到Group產品圖片Woocommerce
- 13. Magento:爲產品添加新圖片
- 14. Magento - 如何調整產品縮略圖的大小
- 15. 如何更改Magento中的產品縮略圖顯示?
- 16. Magento產品圖像不顯示在後端以及前端
- 17. Magento查看list.phtml中的相關產品
- 18. Magento - 相關產品不顯示在可配置產品下
- 19. 如何在Magento的產品列表頁面上顯示相關產品
- 20. magento如何在產品上添加出售郵票圖像
- 21. Magento產品縮略圖,如何將其設置爲比例
- 22. magento 2如何設置基礎或縮略圖到產品
- 23. Magento 2不構建產品縮略圖高速緩存
- 24. Magento購物車相同的產品添加在不同的行
- 25. Magento的相關產品沒有顯示產品頁面
- 26. 隨機產品代替magento中的相關產品
- 27. 如何在產品查看頁面上顯示3種相關產品,Magento?
- 28. 添加產品是指在Magento
- 29. 幫助Magento及相關產品
- 30. Magento按價格排序相關產品
謝謝...我會在哪裏找到的? – eugene 2010-12-20 18:49:55
什麼eugene,不用謝謝大流士傑出的答案? – Pete855217 2014-03-19 09:05:37