2015-11-25 18 views
6

Ho installato un nuovo Magento2 e le categorie principali funzionano, ma per la sottocategoria non è presente alcun prodotto visualizzato nel frontend, anche se pensavo di aver assegnato prodotti a queste sottocategorie.I prodotti non vengono visualizzati nella sottocategoria Magento2

Si dice sempre "Non possiamo trovare prodotti corrispondenti alla selezione".

Dove posso trovare il codice in Magento 2 responsabile della visualizzazione dei prodotti in modo che possa diagnosticare questo in modo programmatico?

+0

Benvenuti a StackOverflow! Questa domanda è fuori tema qui, poiché SO è un sito dedicato alle domande di programmazione. Si prega di prendere il [tour introduttivo] (http://www.stackoverflow.com/tour). Inoltre, alla tua domanda mancano informazioni di base, come la versione utilizzata e simili. Si consiglia di leggere [Come faccio a fare una buona domanda] (http://stackoverflow.com/help/how-to-ask), che aumenta la probabilità di ottenere una risposta utile. Potresti trovare il saggio [ESR] (https://en.m.wikipedia.org/wiki/Eric_S._Raymond) [How To Ask Questions The Smart Way] (http://catb.org/~esr/faqs /smart-questions.html) utile. –

+0

Sto votando per chiudere questa domanda come off-topic perché Stack Overflow è un sito Q & A [relativo alla programmazione] (http://stackoverflow.com/help/on-topic). La tua domanda non riguarda la programmazione. Forse dovresti invece postarlo su http://magento.stackexchange.com? – Enigmativity

risposta

4

per mostrare il prodotto, controllare se il prodotto le seguenti opzioni:

  1. Generale-> Stato = Abilitato
  2. Generale-> Visibilità = Catalogo, Ricerca
  3. Inventory-> Quantità> 0
  4. Inventory-> Immagine Disponibilità = A Magazzino
  5. sito web = controllando il vostro sito
  6. Ca tgories = verifica la tua categoria.

Se si vuole il controllo dei prodotti a sottocategoria, andare a Catalog-> Gestisci categorie-> Seleziona la categoria, tab aperti impostazioni dello schermo e l'opzione cambiamento "Anchor" a "Sì". Salva categoria.

+0

Quale versione di Magento 2 stai usando? – crashtestxxx

4

Si può provare reindexing.it funziona se queste cose tutti insieme

1.General-> Stato = Abilitato

2.general-> Visibilità = Catalogo, Ricerca

3.Inventory- > Quantità> 0

4.Inventory-> Immagine Disponibilità = A Magazzino

5.Websites = controllando il vostro sito

6.Catgories = verifica la vostra categoria.

+1

Grazie mille, la reindicazione ha fatto il lavoro! Buono a sapersi, la testa mi è stata avvolta per un po '. Puoi spiegare per caso a cosa serve esattamente la reindicizzazione? –

2

Si prega di eseguire il seguente comando nella riga di comando:

php bin/magento indexer:status 

Se uno degli indici è "Processing", quindi passare al database MySQL e andare al tavolo indexer_state. Si noterà che uno dei valori è "In lavorazione" mentre il resto è "Valido"

Impostare di nuovo su Invalid e reindex. Il modo migliore per farlo è quello di eseguire la seguente query:

update magento.indexer_state set status='invalid' where status ='working' 

Buona fortuna!

+0

Per ulteriori informazioni, consulta https://github.com/magento/magento2/issues/5146 – Tristan

0

Avevo un problema simile, il prodotto si presentava nella categoria padre, ma non nella sottocategoria originariamente assegnata. Ho risolto il problema premendo il pulsante "Salva" nella sottocategoria e/o (non sono sicuro se entrambi) la pagina di modifica della categoria padre.

+0

hai provato a eseguire l'indicizzazione? – rajatsaurastri

+0

sì, funziona anche bene, una reindicizzazione manuale, ma per me è molto più semplice colpire solo salvare nella pagina delle categorie piuttosto che aprire la shell coammand, accedere, cambiare utente, eseguire reindex manualmente e rinnovare la cache. Il problema è discusso qui più in dettaglio https://github.com/magento/magento2/issues/2855 –

+0

che non è un modo corretto di fare. Cosa per i nuovi prodotti? Cambio di inventario? ecc. In realtà, è possibile pianificare l'indicizzazione come cron in base al tempo desiderato, in modo che i dati vengano indicizzati correttamente. – rajatsaurastri

1

Ciò è dovuto al problema di reindicizzazione.

app \ code \ Modules \ Catalog \ etc \ di.xml

<?xml version="1.0"?> 
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> 
<preference for="Magento\Catalog\Model\Indexer\Category\Product\Action\Full" type="Modules\Catalog\Model\Indexer\Category\Product\Action\Full" /> 
</config> 

app \ code \ Modules \ Catalog \ modello \ Indexer \ Categoria \ prodotto \ azione \ Full.php

<?php 
namespace Modules\Catalog\Model\Indexer\Category\Product\Action; 

/** 
* Class AbstractAction 
* @SuppressWarnings(PHPMD.CouplingBetweenObjects) 
*/ 

class Full extends \Magento\Catalog\Model\Indexer\Category\Product\Action\Full { 

    public function isRangingNeeded() { 
     return false; // It was "True" as default setting. 
    } 
} 

Quindi, dovremmo eseguire questo comando.

php bin/magento cache:clean 
php bin/magento indexer:reindex 

Infine, abbiamo ottenuto tutto 2000 prodotti sulla nostra pagina categoria invece di precedenti 340 prodotti a pagina frontend. Inoltre, la scheda "Categoria prodotto" sulla gestione dell'indice viene aggiornata dalla data della versione aggiornata alla data e ora di indicizzazione corrente.

Ottima esperienza!

Spero che questo possa aiutare molti sviluppatori e proprietari.

2

subcategoria soluzione Esposizione del prodotto problema in quanto è necessario seguire, come di seguito:

Magento 2 Admin ==> Prodotti ==> categoria ==> Sotto categoria ==> design ==> Usa Capogruppo Categoria impostazioni ==> Controllato Qui

enter image description here

Problemi correlati