Magento - 从左侧栏中删除购物选项块中的类别

时间:2014-09-10 08:55:08

标签: magento

在发布此问题之前,我已尽力为此找到解决方案。我想从magento左侧边栏的购物选项块中删除类别图层。

http://i59.tinypic.com/35mi22u.jpg

我想从左侧边栏中删除标记的选项。我需要价格和颜色才能出现。 任何帮助赞赏。 在此先感谢。

我的app / design / frontend / default / default / template / catalog / layer / view.phtml

<dl id="narrow-by-list">
            <?php $_filters = $this->getFilters() ?>
            <?php $i=0; foreach ($_filters as $_filter): $i++; ?>

            <?php if($_filter->getItemsCount()): ?>
               <dt id="filterlabel<?php echo $i;?>"><?php echo $this->__($_filter->getName()) ?></dt>
                <dd><?php echo $_filter->getHtml() ?></dd>

                <script type="text/javascript" >   
                    <?php if($open == 1): ?>     
                        jQuery('#filterlabel<?php echo $i;?>').each(function(){
                            jQuery(this).addClass('active');
                            jQuery(this).toggle(function(){
                                jQuery(this).removeClass('active').next().slideUp(200);
                            },function(){
                                jQuery(this).addClass('active').next().slideDown(200);
                            })
                        });                        
                    <?php elseif($open == 0): ?>     
                        jQuery('#filterlabel<?php echo $i;?>').each(function(){
                            jQuery(this).next().hide();
                            jQuery(this).toggle(function(){
                                jQuery(this).addClass('active').next().slideDown(200);
                            },function(){
                                jQuery(this).removeClass('active').next().slideUp(200);
                            })
                        });    
                    <?php endif; ?>                    
                </script>                   
            <?php endif; ?>

            <?php endforeach; ?>
        </dl>

3 个答案:

答案 0 :(得分:0)

这是我从分层导航中删除“Category”部分的操作 所以我不会有任何重复的属性信息 我想要分层导航。

转到app/design/frontend/default/default/template/catalog/layer并打开view.phtml进行修改。

<dl id="narrow-by-list">
            <?php $_filters = $this->getFilters() ?>
            <?php $i=0; foreach ($_filters as $_filter): $i++; ?>

            <?php if($_filter->getItemsCount()): ?>
                <?php if($_filter->getName() != "Category"){ ?>
                <dt id="filterlabel<?php echo $i;?>">
                    <?php echo $this->__($_filter->getName()) ?></dt>
                <dd><?php echo $_filter->getHtml() ?></dd>
                <?php } endif; ?>

                <script type="text/javascript" >   
                    <?php if($open == 1): ?>     
                        jQuery('#filterlabel<?php echo $i;?>').each(function(){
                            jQuery(this).addClass('active');
                            jQuery(this).toggle(function(){
                                jQuery(this).removeClass('active').next().slideUp(200);
                            },function(){
                                jQuery(this).addClass('active').next().slideDown(200);
                            })
                        });                        
                    <?php elseif($open == 0): ?>     
                        jQuery('#filterlabel<?php echo $i;?>').each(function(){
                            jQuery(this).next().hide();
                            jQuery(this).toggle(function(){
                                jQuery(this).addClass('active').next().slideDown(200);
                            },function(){
                                jQuery(this).removeClass('active').next().slideUp(200);
                            })
                        });    
                    <?php endif; ?>                    
                </script>                   
            <?php endif; ?>

            <?php endforeach; ?>
        </dl>

答案 1 :(得分:0)

在主题catalog.xml文件中替换

<block type="catalog/layer_view" name="catalog.leftnav" after="currency" template="catalog/layer/view.phtml"/>

<block type="catalog/layer_view" name="catalog.leftnav" after="currency" template="catalog/layer/view.phtml">
<action method="unsetChild"><child>category_filter</child></action>
</block>

答案 2 :(得分:0)

在尝试和摆弄代码后,我设法解决了我的问题。

转到app / design / frontend / default / default / template / catalog / layer / view.phtml

变化:

<dt id="filterlabel<?php echo $i;?>"><?php echo $this->__($_filter->getName()) ?></dt>

<dt id="filterlabel<?php echo $i;?>"><?php if ($_filter->getName() != 'Category'): {?><?php echo $this->__($_filter->getName()) ?><?php } endif; ?></dt>

上面我删除了标签&#39;类别&#39;在侧栏中显示。

之后转到app / design / frontend / default / default / template / catalog / layer / filter.phtml

变化:

<?php foreach ($this->getItems() as $_item): ?>

<li>
    <?php if ($_item->getCount() > 0): ?>
    <a href="<?php echo $this->urlEscape($_item->getUrl()) ?>"><?php echo $_item->getLabel() ?></a>
    <?php else: echo $_item->getLabel() ?>
    <?php endif; ?>
    <?php if ($this->shouldDisplayProductCount()): ?>
   <!-- (<?php echo $_item->getCount() ?>)-->
    <?php endif; ?>
</li>

<?php endforeach ?>

<?php foreach ($this->getItems() as $_item): ?>
<?php if ($this->getName() != 'Category'): {?>
<li>
    <?php if ($_item->getCount() > 0): ?>
    <a href="<?php echo $this->urlEscape($_item->getUrl()) ?>"><?php echo $_item->getLabel() ?></a>
    <?php else: echo $_item->getLabel() ?>
    <?php endif; ?>
    <?php if ($this->shouldDisplayProductCount()): ?>
   <!-- (<?php echo $_item->getCount() ?>)-->
    <?php endif; ?>
</li>
<?php } endif; ?>
<?php endforeach ?>

在这里,我删除了Category层中的列表。