2015-01-29 2 views
0

맞춤 검색 결과 페이지를 만들고 결과에 포함되어야하는 모든 제품의 ID가 있습니다. 기본 검색 기준을 재정의하고 싶습니다. 그렇습니다. $this->_searchCriterias을 무시할 수 있지만 결과 페이지 자체는 변경되지 않습니다.Magento _searchCriterias를 변경할 수 없습니다.

CatalogSearch/Model/Advanced.php

public function getSearchCriterias() 
    { 
     $search = $this->_searchCriterias; 

     var_dump($search); 

     $search = array(); 

     if(isset($_GET['productid'])) { 
      $value = $this->getIdsFromSearchUrl($_GET['productid']); 
      if(is_array($value)){ 
       foreach($value as $v){ 
       if(is_numeric($v)){ 
        $product = Mage::getModel('catalog/product')->load($v); 
        var_dump($product->getId()); 
        $search[] = array('name'=>'Name','value'=>$product->getName()); 
       } 
       } 
      } else { 
       if(is_numeric($value)){ 
       $product = Mage::getModel('catalog/product')->load($value); 
       $search[] = array('name'=>'Name','value'=>$product->getName()); 
       } 
      } 
     } 

     var_dump($search); 

     $this->_searchCriterias = $search; 

     return $search; 
    } 

appreceated 어떤 도움의 내 사용자 지정 코드입니다.

답변

0

내가 이해하는 방식은 사이트에 항상 "추천 제품"을 포함시켜야하며, 검색 용어와 반드시 관련이없는 것입니다. 검색 엔진 논리를 변경하는 대신 다른 방법을 제안합니다.

  1. 주요 제품을 표시하기위한 블록과 템플릿을 만듭니다.
  2. 은 (catalogsearch_result_index 아래) product_list 블록
  3. 수정 list.phtml 내부 엔진 결과 페이지를 검색 할 수있는 블록을 추가하고 방금 추가 한 자식 블록을 에코.

이 정보가 도움이되는지 알려주세요.

+0

아니요, 불분명 한 경우 죄송합니다. 결과 페이지에 표시 할 특정 ID를 반환하는 사용자 지정 검색 엔진 (GUI)을 만들었습니다. –

+0

안녕하세요 Rápli, getAdvancedResultCollection()을 수정하고 맞춤 검색 엔진에서 반환 한 ID가있는 제품 컬렉션으로 바꾸시겠습니까? –

관련 문제