La categoria padre mostra i prodotti nelle sottocategorie, anche se il prodotto non è stato assegnato alla categoria padre


9

Supponiamo che io abbia una categoria, abbigliamento e questa categoria abbia una sottocategoria, magliette.

Ora aggiungo un prodotto alla categoria T-shirts (selezionando la casella nella schermata Aggiungi prodotto), ma non controllo la categoria Abbigliamento. Quindi, supponevo che ciò significasse che il prodotto sarebbe apparso solo nella categoria T-shirts sul front-end e non nella categoria genitore Abbigliamento.

Tuttavia, il prodotto appare nelle categorie Abbigliamento e T-shirt.

Questo è un problema perché la categoria T-shirt è "Includi nel menu di navigazione"> Nessuna categoria, ovvero dovrebbe essere nascosta. Tutti i prodotti della categoria hanno visibilità del catalogo, quindi non vengono visualizzati nei risultati di ricerca.

Ho indagato abbastanza profondamente finora e ho scoperto che il problema è con l'indicizzazione del catalogo Magento. L'esecuzione dell'indicizzatore di prodotti di categoria da Sistema> Gestione indice ricostruisce l'indice, in esecuzione Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Indexer_Product::reindexAll().

Questa funzione SELEZIONA vari dati da diverse tabelle relative alle categorie e li inserisce nella tabella catalog_category_product_index, che è la tabella utilizzata per generare la raccolta di prodotti per le pagine delle categorie.

Qualcuno ha qualche suggerimento su come nascondere / impedire che i prodotti delle sottocategorie compaiano nelle loro categorie principali?

Sto usando Magento 1.4.1.0. La categoria Abbigliamento è impostata su Ancora e la categoria T-shirt no. Usa categoria piatta è impostata su Sì.

Risposte:


13

Questa è in realtà una caratteristica. Se si desidera evitare ciò, è necessario impostare il flag "Is anchor" su "No" nella categoria padre. Nel tuo esempio "Abbigliamento". In questo modo, nella categoria padre vedrai solo i prodotti direttamente assegnati ad essa.
Dopo aver apportato le modifiche, è necessario reindicizzare tutto.


2
Ah, ma devo mantenere "Is Anchor" nella categoria padre, perché utilizza la Navigazione a più livelli.
ProcessEight,

Ehm .... allora penso che tu abbia un problema. Sono fuori di idee su questo.
Marius

Non ho bisogno della navigazione a più livelli nella categoria T-shirts, quindi penso che sposterò la categoria T-shirt fuori dall'abbigliamento, quindi mostrerà solo i prodotti direttamente correlati come dici tu
ProcessEight

@ sfrost2004 Quindi, le magliette non sono vestiti? Immagino di averli usati male ...
Benubird,

2
hmmm stavo cercando @ stackoverflow.com/questions/22990622/… dove ho visto $ this -> _ productLimitationFilters ['category_is_anchor'] = 1; E forse qualcosa collega questo $ this-> getLoadedProductCollection () -> addAttributeToFilter ('is_parent', array ('eq' => 1)) - Se è un genitore
snh_nl
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.