2011-02-25 89 views
6

我知道,在這個catalog.xml中線路的影響所有佈局:Magento:如何根據頁面佈局更改產品列的數量?

<action method="setColumnCount"><columns>5</columns></action> 

但我想改變列的基於特定的頁面佈局,數量,即:用左手欄,三個欄等

2columns

這是有人說要做的事,但我不確定我是否在正確的位置添加了更新標記,因爲它似乎不起作用。此外,如果你讀了評論,他們說一旦你打開緩存回來就可以打破它: http://www.lotusseedsdesign.com/blog/change-grid-view-column-4-product-listing

因此,沒有人知道如何使用addColumnCountLayoutDepend方法或任何其他方式改變具體到產品格列數頁面佈局?

+0

請更新您的問題以包含您修改的XML部分。另外,即使在緩存關閉的情況下,它是否也被破壞? – clockworkgeek 2011-02-26 00:44:31

+0

我從來沒有在鏈接工作的方法。其他人聲明,在佈局緩存啓用後該方法會中斷。我沒有發佈我修改過的XML,因爲它會讓問題變得很大。我只是試圖找到任何合理的方法來允許不同的佈局顯示不同的產品行大小。 – Christina 2011-02-26 00:51:52

回答

6

對於子類別頁面,在應用程序/設計/前端/你的接口/佈局/的catalog.xml改變一個字段的值以下行:

<action method="setColumnCount"><columns>4</columns></action> 

對於根類別頁面,在應用程序/設計/前端/你的界面/模板/目錄/產品/ list.phtml找到 「網格模式」 一節下面的代碼,並與appropiate值改爲:

<?php $_columnCount = $this->getColumnCount(); ?> 

<?php $_columnCount = 4; ?> 
1

轉到app \ design \ frontend \ base \ default \ layout \ catalog.xml 然後轉到第85行並罰款代碼。並找到「catalog/product_list_toolbar」,然後根據您的需要定製產品。

+0

在1.9.2.4是在排105與152: <! - 由於addColumnCountLayoutDepend不起作用,我們正在手動設置最大\t列 - > <操作方法= 「setColumnCount」> – Misho 2016-05-31 01:41:29

3

有幾種方法可以更改列計數。你可以嘗試每種方法,看看有什麼適合你。

1)觀看本教程:http://www.youtube.com/watch?v=wNbV34v72a0 下面是使其工作所需的代碼。

<reference name="product_list"> 
<action method="setColumnCount"><count>4</count></action> 
</reference> 

2)如果上述操作失敗,請在您想要更改列的CMS頁面中使用此選項。舉個例子:如果你有一個CMS頁面來顯示特定的類別,請使用它。這對於顯示特定類別的產品和同時設置每行的項目數量特別有用。過去在您的CMS頁面下面的代碼:

{{block type="catalog/product_list" category_id="42" template="catalog/product/showroom.phtml" columnCount="4"}}  

您可以從4變更數量信息columnCount到任何你想要的。您可以通過點擊您的magento admin/category/manage category/

下的類別來獲得類別ID。這非常重要!有時,當您在上述兩個步驟中的任何一箇中都做正確的事情時,每行的項目仍然不會改變。原因很容易成爲CSS問題。因此,導致步驟3:

3)打開您的模板的CSS並搜索.products-grid 確保寬度設置爲足夠高的數字,以便能夠顯示每行所需的項目數量,而不必推倒溢出物品。在我的例子中,我盡我所能每行有4個項目,但失敗了,直到我注意到在CSS中,我的.col1-layout .products-grid的寬度爲750px。我將寬度更改爲995px,第2步完美無缺。

這是晚,但我希望它可以幫助那裏的人。

+0

剛爲了避免回覆,可以在widget中完成,只需使用:{{widget type =「catalog/product_widget_new」display_type =「all_products」show_pager =「1」products_per_page =「6」products_count =「12」column_count =「3」template = 「目錄/產品/部件/新/內容/ new_grid.phtml」}}。 請注意像塊調用中的column_count而不是columnCount。 – versedi 2015-09-16 07:08:24

5

有點老問題(近3年:d),但我發現一個有趣的解決方案,這對Kathir 'Sid' Vel's site

爲此,您編輯目錄/產品/ list.phtml模板。

查找該行:

<?php $_columnCount = $this->getColumnCount(); ?> 

並用代碼波紋管更換或註釋行,後添加代碼。改變它

<?php 

/* Get the layout's page template */ 
$pageLayoutRootTemplate = $this->getLayout()->getBlock('root')->getTemplate(); 

/* Set the column count based on the layout template used */ 
switch ($pageLayoutRootTemplate) { 
    case 'page/1column.phtml': 
     $_columnCount = 4; 
     break; 

    case 'page/2columns-left.phtml': 
     $_columnCount = 3; 
     break; 

    case 'page/2columns-right.phtml': 
     $_columnCount = 3; 
     break; 

    case 'page/3columns.phtml': 
     $_columnCount = 2; 
     break; 

    default: 
     $_columnCount = 3; 
     break; 
} 

?> 
-1

簡單的方法是從配置選項卡

系統 - >配置 - >目錄選項卡,目錄 - >前端你可以從你的Magento後端輕易改變它。

+0

該選項不存在於Magento CE 1.9.1.0 – Roy 2014-12-16 15:31:47

+0

不要試試這個。 – 2015-05-21 06:48:28

相關問題