2012-12-17 30 views
1

我正在嘗試修改Magento的CMS/home_page mi 。我希望看到一些產品是在一個特定的類別,如:如何刪除主頁上的傳呼機和分揀機Magento

{{block type="catalog/product_list" category_id="35" column_count="4" template="catalog/product/list.phtml" }} 

它顯示類產品,但現在,我想走得更遠了一步,我想刪除一些元素,因爲它是主頁。附上的圖像澄清:

Remove elements

1和2分別位於尋呼機元件。當我們有多個產品頁面時,我們也可以看到頁面(元素4),也位於此處。在這種情況下,我們只有4種產品,所以我們看不到頁面。元素3在分類器元素。

我想刪除元素1,2和3,如果它是主頁,但保留元素4(頁)。

關於如何在Magento上做到這一點的任何想法?

回答

0

我可以解決它。對於任何人誰也需要它,沒有祈禱,延伸,在這裏我寫我所做的:

第一:

我重複我的主題文件夾此PHTML:

catalog/product/list/toolbar.phtml 
catalog/product/list.phtml 

我貼他們在我的模板文件夾。爲了不覆蓋不是主頁的其他頁面的元素,我改變了名稱。

catalog/product/list/toolbar_home.phtml 
catalog/product/list_home.phtml 

有了這個,我有2個只適用於我的主頁的phtml。我如何給他們打電話?

二:

我添加了特定塊在我的主頁:

{{block type="catalog/product_list" category_id="35" column_count="4" template="catalog/product/list_home.phtml" }} 

當心:我改變了模板指向我的模板。

三:

在我list_home。PHTML,在那裏你可以找到這個代碼:

<?php echo $this->getToolbarHtml() ?> 

我改變了它本:

<?php echo $this->getToolbarHtmlHome() ?> 

此功能不存在,所以我們需要創建它。該功能將調用我們的toolbar_home.phtml

四:

轉到代碼/核心/法師/目錄/座/產品/ list.php的,並找到函數getToolbarHtml。複製並粘貼在它下面。並改變它看起來像這樣:

public function getToolbarHtmlHome() 
{ 
    return $this->getChildHtml('toolbar_home'); 
} 

現在,我們已經創建了所有的代碼,你可以去模板/目錄/產品/列表/ toolbar_home.phtml和修改任何你想要的。它只會在你的主頁上工作! :)

+0

'當心:我改變了模板指向我的模板.'就像我說的,如果你不想編輯核心或模板, z塊是完美的。 – Zak

+0

是的,謝謝你,我可以到達這個解決方案!非常感謝! :d – Sonhja

1

您將不得不復制類別產品列表顯示模塊,這意味着創建您自己的模塊,XML,PHTML等......我個人會使用Aheadworks中的z-blocks模塊。這可以讓你在你的主頁上顯示諸如「精選產品」等東西,而無需編輯Magento塊代碼。考慮到你花費時間來開發你想要做的事情,這並不是很昂貴。

1

您可能已經知道這些元素是通過pager.phtml呈現的。
如果您想刪除的元素可以通過檢查條件而消失,例如
if(!(Mage :: getSingleton('cms/page') - > getIdentifier()=='home'))
{傳遞你不想出現在主頁上的變量}