2011-03-23 66 views
1

我試圖在產品管理面板中添加一個新的圖像類型。我創建了一個新的屬性(hero_banner),將它的類型設置爲媒體圖像(類似於如何設置縮略圖圖像和small_image)。然後我將它添加到圖像下的默認屬性集。它在管理面板中顯示得很好,並允許您將圖像分配爲英雄,但當我嘗試將圖像路徑回顯到phtml時,模板停止渲染。我使用的回聲圖像的代碼如下:添加新產品圖像類型(屬性)在Magento

<?php echo $this->helper('catalog/image')->init($_product, 'hero_banner'); ?> 

這是一個產品的foreach迭代中完成的,所以我有$ _產品變量,我可以附和其他細膩的圖像(如縮略圖,small_image等等)。我究竟做錯了什麼?

+0

迪諾,你是怎麼做到的,我也想要實現它。請給我分享一些信息嗎? – Muk 2014-04-22 06:39:46

回答

0

我認爲你必須到您的收藏這樣太選擇此屬性之前收集實際裝載:

$productCollection->addAttributeToSelect('hero_banner'); 

它適用於我的代碼很好,但我不知道你是否已經rewrited塊您的收藏已定義(它不會在您的模板中工作,因爲收藏已經在那裏加載) 也許你可以配置你的hero_attribute直接在Magento後臺添加這個addAttributeToSelect,我會看看

編輯:好吧,我想我已經明白了,你不必擔心收集&次重寫:) 如果您使用的產品上市這個屬性,你必須設置屬性爲true,以你的形象屬性(在管理面板屬性管理)

祝你好運「產品上市可見」

+0

絕對的傳說謝謝你的工作就像一個魅力。雖然我使用自定義代碼來檢索我的產品集合,但我使用的代碼來自List.php,以嘗試符合Magento最佳實踐。添加屬性的代碼是: - > addAttributeToSelect(Mage :: getSingleton('catalog/config') - > getProductAttributes()),我想在這個英雄里拉。任何想法,我可以編輯這個? – Dino 2011-03-23 11:24:02

+0

我不明白你想要做什麼?如果你使用getProductAttribute()(你可以看一下Mage_Catalog_Model_Resource_Eav_Mysql4_Config :: getProductAttribute()) – haltabush 2011-03-23 12:56:06

+0

我在說的是在該方法調用中,我發佈了其他圖像的屬性(例如small_image ,縮略圖等)。如果我能夠找出他們包括他們的位置,這將是很好的,這樣我就不必在任何地方都包含英雄屬性了。我沒有大規模的困擾,但它只是一個更好的方法。 – Dino 2011-03-23 14:43:48