2013-10-19 59 views
0

我想圍繞如何在新模塊中使用Magento的本機功能。因此,對於一個簡單的例子可以說我有一個像基本的shell:在新模塊中擴展Magento的功能

應用程序/代碼/本地/ ME /測試/座/ Container.php

<?php 
class Me_Test_Block_Container extends Mage_Core_Block_Template 
{ 
} 

,並在layout.xml我將設計獨特的類別和產品頁面區塊:

<catalog_category_layered> 
    <reference name="after_body_start"> 
      <block type="test/container" name="test.container" template="test/category_container.phtml"/> 
     </reference> 
    </catalog_category_layered> 
    <catalog_product_view> 
    <reference name="after_body_start"> 
      <block type="test/container" name="test.container" template="test/product_container.phtml"/> 
     </reference> 
    </catalog_product_view> 
</catalog_category_layered> 

在那些PHTML我想使用的功能來獲得類別頁面上當前類別和產品頁面上獲得的產品SKU。所以,在我category_container.phtml類別頁我想使用的功能

<?php $_category = $this->getCurrentCategory();?>

但它返回空白。有人能幫助我更多地瞭解這個嗎?我將getCurrentCategory函數複製到Container.php中,但沒有奏效。我是否應該在layout.xml中更改塊類型以便能夠使用該功能或​​者正確的方法是什麼?

回答

2

,你可以得到的類別是這樣的:

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

和產品就像這樣:

$_product = Mage::registry('current_product'); 

使用它檢查自己的價值不是null之前。