2016-09-06 45 views
1

私の商品ページには、商品が入っているカテゴリーを示すために、以下のコードを使用しています。しかし、私は同じ製品で複数店舗を運営しており、他のウェブサイトのカテゴリも表示しています。訪問しているサイトのカテゴリのみを表示するにはどうすればよいですか?Magento - 商品が表示されます

<?php $categories = $_product->getCategoryIds(); ?> 
    <?php foreach($categories as $k => $_category_id): ?> 
    <?php $_category = Mage::getModel('catalog/category')->load($_category_id) ?> 
<a href="<?php echo $_category->getUrl() ?>"><?php echo $_category->getName() ?> | </a> 
    <?php endforeach; ?> 
+0

これを試してください。 http://stackoverflow.com/questions/15505221/how-do-i-get-the-category-ids-that-a-product-is-in-with-respect-to-the-store-tha –

答えて

0

チェックロードカテゴリIDは

<?php $categories = $_product->getCategoryIds(); ?> 
    <?php foreach($categories as $k => $_category_id): ?> 
<?php $_category= Mage::getModel('catalog/category')->load($_category_id)?> 
    <?php if($_category->getId()):?> 
     <a href="<?php echo $_category->getUrl() ?>"> 
     <?php echo $_category->getName() ?> | </a> 
     <?php endif;?> 
    <?php endforeach; ?> 
0

ユーザー現在の店舗のカテゴリを取得するには、このコードは存在しないかではありません。

$storeId = Mage::app()->getStore()->getStoreId(); 
    $rootCategoryId = Mage::app()->getStore($storeId)->getRootCategoryId(); 
    $categoriesCollection = Mage::getModel('catalog/category') 
        ->getCollection() 
        ->setStoreId($storeId) 
        ->addFieldToFilter('is_active', 1) 
        ->addAttributeToFilter('path', array('like' => "1/{$rootCategoryId}/%")) 
        ->addAttributeToSelect('*'); 
       foreach($categoriesCollection as $cat) 
        { 
         $id = $cat->getId();     
         $name = $cat->getName();    
        } 
関連する問題