2013-12-12 18 views
0

我對magento專家有個簡單的問題。我想對magento的PHP核心進行更改。Magento php核心。編輯產品清單目錄

我想添加產品詳情的詳細信息,具體取決於每個產品,並且我希望在目錄列表中顯示額外的詳細信息,因此它涉及到數據庫& PHP。

所以我的問題是 - 在哪裏可以做到這一點?我對magento文件結構並不熟悉,我需要這種匆忙,我希望我有時間研究它的結構,但它可能會比我的最後期限花費更多的時間。

請注意,我在說的是管理員產品列表,而不是客戶的卡車。

+0

您可能需要重寫產品網格類並在prepareColumns()中添加一列,並可能將您的信息添加到prepareCollection()中的集合中。更具體的信息需要更好的答案。 – russjman

+0

好的謝謝你的答案russjman。爲了提供更多信息,我想爲每個產品列表添加邊框或背景顏色,顏色將取決於產品所屬的類別。我搜索並發現,做這件事的最好方法是製作一個自定義模塊,除非已經有一個我懷疑的現有模塊。但它可能需要更多時間,所以我決定暫時編輯核心php代碼。那麼有沒有人知道我應該看什麼PHP文件? –

+0

好的。我上面提到的是管理部分。如果是詳細信息頁面,您可以在 /template/catalog/product/view.phtml中完成所有這些邏輯。如果它的類別頁面是 /template/catalog/product/list.phtml。 – russjman

回答

0

如果是詳細信息頁面,您可以在/template/catalog/product/view.phtml中執行所有這些邏輯。如果它的類別頁面是/template/catalog/product/list.phtml。無論哪種方式,它會是一樣的。

$categories = $product->getCategoryIds(); //this is array of category ids the product exists in 

$blueCategoryIds = array(1,2,3,4); 
$redCategoryIds = array(5,6,7,8); 

if(in_array($blueCategoryIds,$categories)){ 
    $newClass = 'blue-background'; 
} elseif (in_array($redCategoryIds,$categories)) { 
    $newClass = 'red-background'; 
} else { 
    $newClass=''; 
} 

在CSS文件中定義.blue-background和.red-background。

.red-background {background:red;} 
.blue-background {background:blue;} 

然後使用$ newClass在您想要應用背景的任何html元素中。這可能應該是自定義模塊的一部分,但這應該快速。

+0

這是在管理頁面?因爲我打算僅在管理頁面上進行更改。謝謝 –

+0

不幸的是,管理網格是一個完全不同的動物,並且需要不同的解決方案。也許這可能會工作:http://stackoverflow.com/questions/13766173/magento-different-background-color-for-group-of-rows-on-backend-grid – russjman

+0

看起來像什麼即時通訊尋找,非常感謝,將會檢查它。 –