2011-07-19 4 views
1

J'ai un magasin magento (1.5) et un blog wordpress (3.2).Magento Liste des produits par catégorie ID

Les blogs wordpress agissent comme le site principal et l'index de la page d'accueil. En utilisant Mage-Enabler, j'ai intégré wordpress et magento ensemble et je suis capable de tirer le bloc de caisse, les liens rapides et tous les fichiers.

Ma question est que je voudrais afficher les catégories les plus vendues sur la page d'accueil. Je le ferais habituellement avec le XML dans le CMS. par exemple.

{{block type="catalog/product_list" category_id="your_category_id" template="catalog/product/list.phtml"}} 

Mais cela est impossible dans ce cas comme la page maison-magasin ne se voit pas, par exemple lorsqu'un utilisateur clique sur le bouton boutique-ligne sur la navigation, il les prend sur la page de la catégorie atterrisseur montrant toutes les catégories et une recherche.

Ma logique m'a conduit à le faire via PHP par exemple

<?php 

$categoryId = 123; // a category id that you can get from admin 
$category = Mage::getModel('catalog/category')->load($category_Id); 

?> 

... ce serait dans une copie du produit> Page list.phtml.

Est-il possible de tirer des produits dans une liste via une catégorie spécifique via des modèles PHP plutôt que les types de blocs XML dans l'admin?

Merci

Cameron

Répondre

17

Ce oughtta faire ce dont vous avez besoin:

<?php 

$categoryid = 12; 

$category = Mage::getModel('catalog/category'); 
$category->load($categoryid); 
$collection = $category->getProductCollection(); 
$collection->addAttributeToSelect('*'); 

foreach ($collection as $_product) { ?> 

<a href="<?php echo $_product->getProductUrl() ?>"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(200); ?>" width="200" height="200" alt="" /></a> <a href="<?php echo $_product->getProductUrl(); ?>"><?php echo $_product->getName(); ?></a> 

<?php } ?> 
+0

Merci un homme beaucoup :) – ravisoni

+0

comment arrêter de produits hors stock de la collection –

+0

Meilleure réponse .. !! ! Merci @Adam –

Questions connexes