2014-01-09 59 views
0

我有一個叫做Fishpig的magento的安裝插件。它主要通過magento運行wordpress,允許在主網站上使用它們。 WP安裝正在用於博客,並且通過根據需要更改magento文件來設置完整的初始主題。我在尋找的東西雖然是一種改變主題的方式,但如果我查看與網站代表相關的某個類別。Fishpig_Wordpress Magento擴展。主題一個自定義類別

如果我要選擇類別,是否可以設置不同的模板?我是否需要將if語句添加到類別WP佈局文件中?

回答

1

如果您想根據當前的WordPress類別(或任何條件)更改整個主題,則需要聽取活動並以編程方式更改主題。最常用的事件是'controller_action_predispatch',但如果您只想更改WordPress類別頁面的主題,則最好使用'controller_action_predispatch_wordpress_post_category_view'。

附加一個事件觀察者方法到您選擇的事件,然後使用下面的代碼:

$_category = Mage::registry('wordpress_category'); 

if (!$_category) { 
    return $this; 
} 

$_categoryId = (int)$_category->getId(); 

if ($_categoryId === 1) { 
    Mage::getDesign() 
     ->setPackageName('default') 
     ->setTheme('default'); 
} 
else if ($_categoryId === 2) { 
    Mage::getDesign() 
     ->setPackageName('default') 
     ->setTheme('default');  
} 

return $this; 

你會需要修改代碼來設置正確的包/主題(下面的代碼啓用默認包和默認主題)以匹配您要設置的包/主題。