新しいモジュールで Magento のネイティブ関数を使用する方法に頭を悩ませようとしています。簡単な例として、次のような基本的なシェルがあるとしましょう。
アプリ/コード/ローカル/私/テスト/ブロック/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();?>
しかし、それは空白を返します。誰かがこれについてもっと理解するのを手伝ってもらえますか? 関数を Container.phpにコピーしましたgetCurrentCategory
が、うまくいきませんでした。その機能を使用できるようにするには、layout.xml のブロック タイプを変更する必要がありますか、それともこれを行う適切な方法は何ですか?