2011-03-25 2 views
4

Je veux afficher les 10 premières recherches sur mon magasin Magento. Magento stocke déjà les recherches effectuées sur le magasin sous Admin> Catalogue> Termes de recherche, il s'agit donc simplement de l'afficher dans ma vue. Est-ce que quelqu'un sait quel assistant ou fonction je peux accéder pour obtenir cette liste?Obtenir des recherches populaires dans Magento

Répondre

8

Vous avez une méthode setPopularQueryFilter dans la Mage_CatalogSearch_Model_Mysql4_Query_Collection de classe, après que vous suffit de fixer une limite que je suppose :)

Sans essayer, il devrait être quelque chose comme ça:

$searchCollectino=Mage::getModel('catalogsearch/query')->getCollection() 
    ->setPopularQueryFilter() 
    ->setPageSize($limit); 
+1

Cela fonctionne! Il suffit de faire un -> getItems() sur la collection et vous obtenez tous les éléments que vous voulez :) –

+0

+1 a travaillé comme charme :) @KeenoraFluffball que les éléments ne seront pas triés en fonction de leur popularité. –

+0

Dans ce cas, il doit être une coïncidence tout le temps, car les miennes sont triées correctement. –

0

Si quelqu'un a besoin de la solution Magento 2:

injectent la classe \Magento\Search\Model\Query dans votre constructeur, puis récupérer la collection comme ceci: $collection = $this->query->getSuggestCollection()

Cela retournera une collection des termes de recherche les plus populaires triés par popularité.

Questions connexes