2012-04-23 17 views
0

私には質問がありますMage::registrycategories:私はカテゴリページにいます、私は現在のカテゴリをMage::registry('current_category')で取得しています。私はそれがルートカテゴリのためだけに働くことに気がつきました。サブカテゴリページを訪れた場合、私はいつもMage::registry('current_category')というルートカテゴリを取得します。だから問題は:バックエンドの設定、キャッシュ、または何か他に何かがありますか?Magento - レジストリと現在のカテゴリ

+0

あなたの投稿を読んで質問してください。あなたの質問はここにありますか?迅速な回答のために –

答えて

3

OOBは、current_categoryMage_CatalogCategoryController::_initCategory()(REF here)に設定されており、常に現在視聴中カテゴリに等しくなります。

データが異なる場合、アプリに標準以外の機能があるか、キャッシュされた結果が表示されています。すべてのカテゴリについては

+0

tnx解決済み;-) – Luke

6

テンプレート(例えばcatalog/category/view.phtml)にある場合、あなたはモデル、コントローラまたは他にある場合、(hereを発見した)、これを試してください

$this->getCurrentCategory(); 

と現在のカテゴリを取得できます。

Mage::getModel('catalog/layer')->getCurrentCategory(); 

しかし、Mage :: registry( 'current_category')は通常の方法です。

1

: -

<?php $_helper = Mage::helper('catalog/category') ?> 
<?php $_categories = $_helper->getStoreCategories() ?> 
現在カテゴリについては

<?php $currentCategory = Mage::registry('current_category') ?> 

私のために動作します。

関連する問題