Magento 获取特定类别级别
如何从Magento获得特定的类别级别,我的类别设置现在是这样的Magento 获取特定类别级别,magento,Magento,如何从Magento获得特定的类别级别,我的类别设置现在是这样的 root_catalog |-Shop |-Shoes |-T-shirts |-Brands |-Nike |-Womens |-Mens |-Adidas |-Asics <?php if( $category = Mage::getModel('catalog/category'
root_catalog
|-Shop
|-Shoes
|-T-shirts
|-Brands
|-Nike
|-Womens
|-Mens
|-Adidas
|-Asics
<?php if( $category = Mage::getModel('catalog/category')->load( $categories[1]) ): ?>
<?php echo $category->getName(); ?>
<?php endif ?>
根目录
|-商店
|-鞋
|-T恤衫
|-品牌
|-耐克
|-女性
|-男人
|-阿迪达斯
|-Asics
调用$category->getName()时;我只想展示品牌名称,可以吗 您可以从
$category=Mage::getModel('catalog/category')->load($categories[1])->getLevel()
然后检查您的品牌名称类别级别,如果匹配则显示名称
e、 g.假设品牌类别级别为3
<?php if( $category = Mage::getModel('catalog/category')->load( $categories[1]) ): ?>
<?php if($category->getLevel() == 3)
echo $category->getName(); ?>
<?php endif ?>
<?php endif ?>
ANKIT的答案很好,但可以通过实际查询特定级别来改进,而不是加载整个集合并执行条件查询。例如,如果要获取特定级别中的所有类别:
<ul>
<?php $categories = Mage::getModel('catalog/category')
->getCollection()
// magic is prepared here..
->addAttributeToSelect('*')
// then the magic happens here:
->addAttributeToFilter('level', array('eq'=>2))
->load();
foreach($categories as $category):
?>
<li>$category->getName()</li>
<?php endforeach; ?>
</ul>
- $category->getName()
?>
是否有一种使用属性过滤器的方法?我一直试图通过->addAttributeToFilter('level',3')只获得级别3。但是它显示的是2+3,而不是3。我更喜欢你的方式,但是你如何显示3级呢?我正在使用->addAttributeToFilter('level',3),但它显示2+3,而不是3,可能会有点晚…但是,我相信行中的'eq'符合相等条件。例如->addAttributeToFilter('level',array('eq'=>2))
<?php
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$product = $objectManager->get('Magento\Framework\Registry')->registry('current_product');
$categories = $product->getCategoryIds(); /*will return category ids array*/
foreach($categories as $category){
$cat = $objectManager->create('Magento\Catalog\Model\Category')->load($category);
if ($cat->getLevel() == 2) {
$catName = $cat->getName().","; ?>
<div class="brand_bg">
<label><?php /* @escapeNotVerified */ echo __('Category :') ?></label>
<?php echo $catName; ?>
</div>
<?php } ?>
<?php } ?>
?>