2014-12-12 5 views
1

API를 통해 magmi를 사용하여 제품 가져 오기를 수행하고 있습니다. 내 스크립트는 csv 파일을 $ product_rows로 구문 분석 한 다음 내 특성을 사용하여 마법사에서 제품을로드하여 magmi가 사용할 SKU를 가져옵니다. 나는 magmi 가져 오기의 속도를 이용하기 위해 이미로드 된 magento skus로 외부 db를 사용할 것이므로이 방법을 사용하고 있습니다.프로그래밍 방식으로 이미지 제품 새로 고침

$magentoproducts = Mage::getResourceModel('catalog/product_collection') 
        ->addAttributeToSelect('*') 
        ->addAttributeToFilter('mpn', $product_row['mpn']) 
        ->addAttributeToFilter('brand', $_POST['selectbrand']) 
        ->load(); 
foreach($magentoproducts as $product){ 

       $items[] = array(
       "store" => 'admin', 
       "sku" => $product->getSku(), 
       "price" => $product_row['map'] 
       ); 

      } 
foreach($items as $item){ 
      $dp->ingest($item); //do the update 
     } 

문제는 내 가격은 마 젠토에 대한 관리 제품 페이지에 업데이트됩니다,하지만 그들은 카탈로그에 표시되지 않은 : 나는 마법사의 SKU를 당겨 방법은 다음입니다. 그런 다음 검색 페이지에 표시된 가격을 변경하지만 제품을 추가 할 때 실제 제품 페이지 나 장바구니가 아닌 catalog_product_price를 다시 색인하려면 다음 코드를 입력하십시오.

Mage::getModel('index/indexer') 
    ->getProcessByCode('catalog_product_price') 
    ->reindexAll(); 

나는 수동으로 젠토 관리자 패널에서 여러 가지 다른 인덱스를 다시 인덱싱뿐만 아니라 젠토 패널에서 또한 캐시를 삭제 시도했습니다. 모든 페이지에서 가격을 업데이트하는 유일한 방법은 향상된 제품 관리자의 제품을 마젠타 색으로 새로 고치는 것입니다. 단 2-3 초 정도 소요됩니다. 이 동작은 어떤 색인을 다시 색인합니까? 어떤 캐시?

+0

prodcuts가 활성화되어 있습니까? "카탈로그"와 "검색"으로 볼 수 있습니까? 재고가있는 품목입니까? 그들은 범주에 포함됩니까? 그 범주가 존재합니까? – jmunsch

답변

1

제품에 대해 FLAT 모드를 사용하도록 설정했을 수 있습니다. 그렇다면 업데이트 후 다음 명령을 호출하십시오.

Mage::getResourceModel('catalog/product_flat_indexer')->rebuild();