跨境电商
经验交流分享

Magento显示当前顶级分类下的子分类的代码片段

Magento显示当前顶级分类下的子分类的代码片段。按照规范应该写在block里边然后在模板中调用的。这里为了方便使用,全部写在一起了。根据客户的样式需求,只需要调用三级分类,所以不用写方法,也没有使用递归,有一定的局限性。

具体实现的效果和代码如下。

Magento自定义分类模块

Magento自定义分类模块

[php]
<?php
$ccategory = Mage::registry(‘current_category’);

$cats = $ccategory->getChildren();
$catIds = explode(‘,’,$cats);
?>
<?php if(count($catIds) > 1) : ?>
<div>
<?php foreach($catIds as $catId): ?>
<dl style="height: 350px;">
<?php
$category = Mage::getModel(‘catalog/category’)->load($catId);

$subCats = Mage::getModel(‘catalog/category’)->load($category->getId())->getChildren();
$subCatIds = explode(‘,’,$subCats);
?>
<dt>
<a title="<?php echo $category->getName() ?>" href="<?php echo $category->getUrl(); ?>">
<img width="205" height="205" alt="<?php echo $category->getName() ?>" src="<?php $this->getUrl() ?>media/catalog/category/<?php echo $category->getThumbnail() ?>">
<img width="205" height="205" src="http://www.example.com/images/xxx.png">
</a>
</dt>
<dd>
<h2>
<a title="<?php echo $category->getName() ?>" href="<?php echo $category->getUrl(); ?>"><?php echo $category->getName(); ?></a><i>(1282)</i>
</h2>
<?php if(count($subCatIds) > 1):?>
<ul>
<?php foreach($subCatIds as $subCat) :?>
<li>
<?php
$subCategory = Mage::getModel(‘catalog/category’)->load($subCat);
?>

<h3><a href="<?php echo $subCategory->getUrl(); ?>"><span></span><?php echo $subCategory->getName(); ?></a></h3>
</li>
<?php endforeach;?>
</ul>
<?php endif; ?>
</dd>
</dl>
<?php endforeach; ?>
</div>
<div style="clear:both"></div>
<?php endif; ?>
[/php]

赞(0)
未经允许不得转载:锐想 » Magento显示当前顶级分类下的子分类的代码片段
分享到: 更多 (0)

评论 1

评论前必须登录!

 

锐想电商 - 跨境电商经验交流分享

锐想无限