Come ottenere l'elenco di tutte le sottocategorie impostate come "Includi nel menu di navigazione" come n


8

Ho cercato di ottenere tutte le sottocategorie che non sono incluse nel menu di navigazione ma che sono attive, della categoria corrente nella pagina elenco.

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

Anche questa raccolta di categorie restituisce anche solo le sottocategorie incluse nel menu di navigazione .

Come ottenere una categoria che non è inclusa nel menu di navigazione?

Risposte:


11

Prova questo:

$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
}

Inoltre non restituisce la categoria che non viene visualizzata nel menu
— @marius

1
@DRAJI. hmmm ... dovrebbe. Assicurati che i tuoi indici siano aggiornati.
— Marius

Mi dispiace anche questo "$ collection = Mage :: getResourceModel ('catalog / category_collection')" non restituisce quelle categorie
— DRAJI

@DRAJI. Quindi potrebbe esserci qualcosa di sbagliato nel tuo albero delle categorie. Dati corrotti forse. Alcuni valori per il pathcampo potrebbero essere errati. Oppure gli ID parent potrebbero essere errati.
— Marius
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.