Afficher les sous categories d’une categorie et le nombres produit
février 18, 2010 55 CommentairesCode magento permettant d’afficher les sous catégories et le nombre de produits des sous catégories. Pratique pour aider à la navigation, quand le client arrive dans une catégorie il a accès à toutes les catégories avec le nombre de produits qu’elle contient, ainsi qu’un lien vers la sous catégorie
Placez le code dans list.phtml
Le code est ajouté dans list.phtml de votre thème magento actif.
<?php //obtenir catégorie courante de magento $catcourante = Mage::registry('current_category'); // id $collection = Mage::getModel('catalog/category')->getCategories($catcourante->getEntityId()); foreach($collection as $cat) { if($cat->getIsActive()) { $category = Mage::getModel('catalog/category')->load($cat->getEntityId()); // collection de produits visibles avec un tatut actif $prodCollection = Mage::getResourceModel('catalog/product_collection')->addCategoryFilter($category); Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($prodCollection); Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($prodCollection); ?><!--sortie Html --> <a href="<?php echo $category->getUrl() ?>"><?php echo $category->getName() ?></a> (<?php echo $prodCollection->count() ?>)<br/> <?php } } ?>
Le code et clair et commenté, vous pouvez supprimer le nombre de produits en supprimant
<?php echo $prodCollection->count() ?>

Les sous catégories de magento sont affichées avec le nombres de produit et un lien vers chaques sous catégories.

le soucis vient de cette ligne sur le site de production
$collection = Mage::getModel(‘catalog/category’)->getCategories($catcourante->getEntityId());
en remplaçant $catcourante->getEntityId() par un id de mes catégories, je me retrouve toujours avec le même résultat les 3 catégories se trouvant sur l’accueil.
je viens même de remarquer que si j’ecris la ligne comme ceci :
$collection = Mage::getModel(‘catalog/category’)->getCategories();
cela fonctionne aussi et je me retrouve avec les 3 catégories de l’accueil
tu es sur que tu as bien construit ton arbre des catégories ?
mon arbre est construit de cette façon
1-TT
1-1 sous cat tt 1
1-2 sous cat tt 2
1-3 sous cat tt 3
1-4 sous cat tt 4
2-Route
2-1 sous cat route 1
2-2 sous cat route 2
2-3 sous cat route 3
2-4 sous cat route 4
3-quad
3-1 sous cat quad 1
3-2 sous cat quad 2
3-3 sous cat quad 3
3-4 sous cat quad 4
visuellement sur l’administration quand on regarde les arbres sur le site de dev et de prod, ils sont identique
Bonjour,
je me suis servi de ce script pour répertorier toutes les catégories (sur plusieurs niveaux) de mon site. Mais les catégories sont classées par ID et non par ordre alphabétique ou par classement du BackOffice.
y’a-t-il moyen d’y remédier ?