2014-09-23 77 views
0

我想集成和編輯過濾器功能。Magento集成過濾器

我有這樣的代碼:

<?php $_filters = $this->getFilters() ?> 
     <?php foreach ($_filters as $_filter): ?> 
      <?php if($_filter->getItemsCount()): ?> 
       <div class="option-combo <?php echo $this->__($_filter->getName()) ?>">   
        <ul class="filter option-set clearfix " data-filter-group="<?php echo $this->__($_filter->getName()) ?>"> 
         <li><h4><?php echo $this->__($_filter->getName()) ?> : </h4></li> 
         <li><a href="#filter-<?php echo $this->__($_filter->getName()) ?>-any" data-filter-value="" class="selected">All</a></li> 

          <?php echo $_filter->getHtml() ?>                 
        </ul> 
       </div>  

      <?php endif; ?> 
     <?php endforeach; ?>> 

和它的作品,但我不想調用另一個EXTERN PHTML文件(filter.phtml,從$ _filter-> getHtml()),但是當我複製代碼從filter.phtml直接進入我的主頁面,如下所示:

<?php $_filters = $this->getFilters() ?> 
<?php foreach ($_filters as $_filter): ?> 
    <?php if($_filter->getItemsCount()): ?> 
     <div class="option-combo <?php echo $this->__($_filter->getName()) ?>">   
      <ul class="filter option-set clearfix " data-filter-group="<?php echo $this->__($_filter->getName()) ?>"> 
       <li><h4><?php echo $this->__($_filter->getName()) ?> : </h4></li> 
       <li><a href="#filter-<?php echo $this->__($_filter->getName()) ?>-any" data-filter-value="" class="selected">All</a></li> 

        <!-- I want to remove this external call and paste directly the content in it --> 
        <?php //echo $_filter->getHtml() ?> 

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

         <?php if ($_item->getCount() > 0): ?> 

          <?php $Clean = $_item->getLabel();  ?>                
          <li style="display:none"><a href="#filter-<?php echo $_item->getLabel() ?>-<?php echo $Clean ?>" data-filter-value=".<?php echo $Clean ?>"><?php echo $_item->getLabel() ?></a></li> 
          <li><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 ?> 
      </ul> 
     </div> 
    <?php endif; ?> 
<?php endforeach; ?> 

它不顯示任何結果...並且沒有錯誤!

回答

0

你可以試試下面的代碼: -

<?php $_filters = $this->getFilters() ?> 
      <?php foreach ($_filters as $_filter): ?> 
      <?php if($_filter->getItemsCount()): ?> 
       <dt><?php echo $this->__($_filter->getName()) ?></dt> 
       <dd><?php echo $_filter->getHtml() ?></dd> 
      <?php else:?> 
       // here you can add own code 
      <?php endif; ?> 
      <?php endforeach; ?> 
+0

謝謝,但我的問題,這是我想從filter.phtml代碼直接添加我的主文件(view.phtml)。 如果我這樣做,它不顯示任何結果。 – Kaherdin 2014-09-23 14:20:47

+0

哪個view.phtml文件?在目錄/類別/ view.phtml? – 2014-09-23 14:31:34

+0

catalog/layer/view.phtml – Kaherdin 2014-09-23 14:52:13