2013-10-09 7 views
5

Ich möchte Produkt eines bestimmten Geschäfts in magento suchen und alle product ids im Array programmgesteuert erhalten. wie die folgende Methode, die $searchstring als Parameter und return $ids Array, die Produkt-IDs von all jenen Produkten hat, wo der Name des Produkts die search string enthalten.Suche Produkt nach Name in Magento und erhalten Array von Produkt-IDs

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

wie: - Wenn wir folgende Produkte auf Katalog

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

und Suchbegriff ist Temp dann sollte es 1,2,3,4,6 nicht 5 weil Temp zurückkehren nicht mit dem Produktnamen übereinstimmt, der id = 5 hat.

Antwort

9

Sie können die Filterabfrage immer mit "Gefällt mir" verwenden.

Probieren Sie es aus ...

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: es funktioniert richtig :) – dashbh

+0

Dank Mak es funktioniert ... !!! – Shashi

+0

Wo sollte es verwendet werden? Wie man es benutzt? Welche Dateien zu ändern ???????? –

Verwandte Themen