【问题标题】:Displaying Specific Magento Categories From Category ID从类别 ID 显示特定的 Magento 类别
【发布时间】:2012-05-15 00:50:35
【问题描述】:

到目前为止,我还没有在网上找到任何已经满足我想要实现的目标的东西。我只是想将特定类别调用到列表中,但我希望能够通过 ID 定义哪些类别,例如,我希望能够像下面这样调用它们:-

{{block type="catalog/navigation" name="catalog.category" template="developer/extension/script.phtml" ids="3,6,17,143,57"}}

我已经根据父类别 ID 在各个位置显示子类别列表,但在有数百个子类别的情况下,显示所有子类别并不总是可行的,所以我想知道如果可以将现有脚本调整为仅包含上述特定类别?

<?php
//gets all sub categories of parent category 'cat-id-4'
   $cats = Mage::getModel('catalog/category')->load(4)->getChildren();
   $catIds = explode(',',$cats);

   $categories = array();
foreach($catIds as $catId) {
    $category = Mage::getModel('catalog/category')->load($catId); 
    $categories[$category->getName()] = array(
        'url' => $category->getUrl(),
        'img' => $category->getImageUrl()
    );
}

ksort($categories, SORT_STRING);
?>
<ul>
    <?php if($category->getIsActive()): ?>
    <?php foreach($categories as $name => $data): ?>
        <li>
            <a href="<?php echo $data['url']; ?>" title="<?php echo     $name; ?>" alt="<?php echo $name; ?>"><?php echo $name; ?></a>
        </li>   
    <?php endforeach; ?>
    <?php endif; ?>
</ul>

如果有人能建议我如何实现这一点,那就太好了 - 提前致谢。

【问题讨论】:

    标签: magento magento-1.6


    【解决方案1】:

    这应该适用于您给定的 CMS 块代码:

    <?php
    $catIds = explode(',', $this->getIds()); //<-- ONLY CHANGE MADE
    
    $categories = array();
    foreach($catIds as $catId) {
        $category = Mage::getModel('catalog/category')->load($catId); 
        $categories[$category->getName()] = array(
            'url' => $category->getUrl(),
            'img' => $category->getImageUrl()
        );
    }
    
    ksort($categories, SORT_STRING);
    ?>
    <ul>
        <?php if($category->getIsActive()): ?>
        <?php foreach($categories as $name => $data): ?>
            <li>
                <a href="<?php echo $data['url']; ?>" title="<?php echo $name; ?>" alt="<?php echo $name; ?>"><?php echo $name; ?></a>
            </li>   
        <?php endforeach; ?>
        <?php endif; ?>
    </ul>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多