从基于父类别的分层过滤器中删除属性

时间:2014-06-12 15:56:56

标签: magento filter catalog

在我的magento网站上,每个产品都有两个父类别。基本上,每个产品都在" Shop by Product"和"按设备购物",然后当然有一些儿童类别。例如,平板电脑的外壳将出现在Shop by Device> iPad,以及Shop by Product>平板电脑包。

每个产品还具有"兼容性"和"产品类型。"我想删除"兼容性"在" Shop by Device下购物时,在目录页面上过滤分层过滤器,"并删除"产品类型"在" Shop by Product"

下购物时过滤

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

将代码放在catalog / layer / view.phtml

中的layer.phtml的开头
$yes=0;
if(Mage::registry('current_catgeory')){
    if(Mage::registry('current_catgeory')->getParentId()==$catid):
    $yes=1
    endif;
}

然后过滤显示位置添加

<?php foreach ($_filters as $_filter): ?>
                <?php if($_filter->getItemsCount()): ?>
                    <dt><?php echo $this->__($_filter->getName()) ?></dt>
                    <dd><?php echo $_filter->getHtml() ?></dd>
                <?php endif; ?>
                <?php endforeach; ?>

变化

<?php foreach ($_filters as $_filter): ?>
        if($yes==1 &&  $_filter->getName()==$Attributelabel){
            //hide
            }
            else{
                <?php if($_filter->getItemsCount()): ?>
                    <dt><?php echo $this->__($_filter->getName()) ?></dt>
                    <dd><?php echo $_filter->getHtml() ?></dd>
                <?php endif; ?>
        }
                <?php endforeach; ?>