2013-10-09 15 views
5

Voglio cercare il prodotto di un particolare negozio in magento e desidera ottenere tutto il product ids nell'array a livello di programmazione. come il metodo riportato di seguito che prende il parametro $searchstring come parametro e l'array return $ids con ID prodotto di tutti quei prodotti in cui il nome del prodotto contiene search string.Cerca prodotto per nome in magento e ottieni array di ID prodotto

function getProductIdsBySearch($searchstring, $storeId) { 
    $ids = array(); 
    // 
    // Code to Search Product by $searchstring and get Product IDs 
    // 
    return $ids; 
} 

piace: - Se abbiamo i seguenti prodotti a catalogo

ID  Product Name 
1  Temp 
2  ProductTemp 
3  ProductTempData 
4  ABCTEMPXYZ 
5  ABCXYZ 
6  Tempdata 

e stringa di ricerca viene temperatura allora dovrebbe tornare 1,2,3,4,6 non 5 perché Temp non corrisponde al nome del prodotto che ha id = 5.

risposta

9

È sempre possibile utilizzare query di filtro con 'come'.

Provatelo ...

function getProductIdsBySearch($searchstring, $storeId = '') { 
    $ids = array();  

    // Code to Search Product by $searchstring and get Product IDs 
    $product_collection = Mage::getResourceModel('catalog/product_collection') 
        ->addAttributeToSelect('*') 
        ->addAttributeToFilter('name', array('like' => '%'.$searchstring.'%')) 
        ->load(); 

    foreach ($product_collection as $product) { 
     $ids[] = $product->getId(); 
    } 
    //return array of product ids 
    return $ids; 
} 
+0

@Shashi: funziona a destra :) – dashbh

+0

Grazie Mak si sta lavorando ... !!! – Shashi

+0

Dove dovrebbe essere usato? Come usarlo ? Quali file modificare ???????? –