2016-03-23 5 views
0

BY ORDERと製品のカテゴリを取得し、私は現在、現在の製品は、以下での製品view.phtmlページ上にリンクされているカテゴリのリストを取得しています:Magentoの:

$cats = $_product->getCategoryIds(); 

その後にそれらをループページは次のようになります:

foreach($cats as $category_id) 
{ 
    $_cat = Mage::getModel('catalog/category')->load($category_id); 
    // do stuff 
} 

このリストをカテゴリ名順に取得するにはどうすればよいですか?

また、私は次のことを試しましたが、foreach文で$ catCollectionを使用すると404エラーが発生しますか?

$catIds = $_product->getCategoryIds(); 
$catCollection = Mage::getResourceModel('catalog/category_collection') 
->addAttributeToSelect('*') 
->addAttributeToFilter('entity_id', $catIds) 
->addAttributeToSort('name', 'ASC') 
->addIsActiveFilter(); 

ありがとうございます。

答えて

2

、現時点ではこれをテストすることができませんが、これはあなたのために働く必要があります。

は順番にそれらを得るために、あなたの代わりにforeachのでこれを行います。

$catIds = $_product->getCategoryIds(); 
$catCollection = Mage::getModel('catalog/category') 
    ->getCollection() 
    ->addAttributeToSelect('*') 
    ->addAttributeToFilter('entity_id', array('in' => $catIds)) 
    ->addAttributeToSort('name', 'ASC'); 
foreach($catCollection as $cat){ 
    echo $cat->getName(), "<br>"; 
} 
+0

これは現時点で影響がありません。 – Adam92

+0

私はこれとその動作をテストしました –