Comment obtenir la liste de toutes les sous-catégories définies comme «Inclure dans le menu de navigation» comme non


8

J'ai essayé d'obtenir toutes les sous-catégories qui ne sont pas incluses dans le menu de navigation mais qui sont actives, de la catégorie actuelle dans la page de liste.

$children = Mage::getModel('catalog/category')->getCategories(10); //10 current category id

Même cette collection de catégories ne renvoie également que les sous-catégories incluses dans le menu de navigation .

Comment obtenir une catégorie qui n'est pas incluse dans le menu de navigation?

Réponses:


11

Essaye ça:

$collection = Mage::getResourceModel('catalog/category_collection')
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('is_active', 1) //only active categories
    ->addAttributeToFilter('include_in_menu', 0) //only categories not included in menu
    ->addAttributeToFilter('parent_id', 10)//get only subcategories of the category with id 10
    ->addAttributeToSort('position')//sort by position
;

foreach ($collection as $category) {
    //do something with $category
}

Il ne renvoie pas non plus la catégorie qui n'apparaît pas dans le menu @marius
DRAJI

1
@DRAJI. hmmm ... ça devrait. Assurez-vous que vos index sont à jour.
Marius

Désolé cela aussi "$ collection = Mage :: getResourceModel ('catalogue / category_collection')" ne retourne pas ces catégories
DRAJI

@DRAJI. Cela pourrait alors être quelque chose de mal avec votre arbre de catégories. Peut-être des données corrompues. Certaines valeurs du pathchamp peuvent être incorrectes. Ou les identifiants des parents peuvent être erronés.
Marius
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.