Prodotti Magento 2 non visualizzati nella categoria (ma sono visibili tramite la ricerca)


8

Ho un piccolo problema qui con le categorie.

Esecuzione di Magento 2.1.3

Tutte le altre categorie visualizzano la quantità corretta di prodotto, tranne questa clicca qui per visualizzare1]

In Prodotti-> Categorie -> la categoria "Morte del Regno" mostra 66 prodotti.

Tuttavia, quando vai a un front-end mostrerebbe solo 16 prodotti.

Cose che ho fatto finora:

  • Svuotato nella cache
  • Reindicizzato tutto
  • Rimuovere / aggiungere nuovamente i prodotti nella stessa categoria
  • Assicurati che i prodotti siano abilitati
  • Assicurati che gli articoli siano disponibili
  • Assicurati che la visibilità del prodotto sia impostata su "Catalogo, Cerca"

Ho confrontato quei 16 prodotti che sono visibili a quelli "invisibili" e non ci sono cambiamenti visibili, tutti i parametri e gli attributi sono identici.

Inoltre, se cerco il prodotto "invisibile" sul sito, lo visualizzerà e lo troverò, ma non funziona se provo a trovarlo usando una categoria.

Apprezzo molto l'aiuto!


devi impostare la visibilità del prodotto Catalogo, cercare dal back-end ed eseguire il comando di indicizzazione.
Rakesh Jesadiya,

Risposte:


4

Questa è la mia risposta corretta Ho appena riscontrato il tuo problema sul mio sito. Il mio sito si basa su Magento 2.1.5. È necessario aggiungere alcuni file XML e PHP nella cartella dell'app.

Soprattutto, il sito è solo uno di produzione dal vivo, la mia risposta è solo una risposta più conveniente.

Possiamo facilmente aggiungere questi due file nella cartella Modules originale.

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" on default vendor part. 
    }
}

Quindi, dovremmo eseguire questo comando.

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

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

Grande esperienza!

Spero che questo possa aiutare molti sviluppatori e proprietari.


Ottima risposta..come ho una categoria con 60K prodotti e cercavo una soluzione e questo è semplicemente eccellente ...
Great Indian Brain

Non ho una cartella "app \ code \ Modules" nel mio negozio? È sufficiente creare semplicemente la cartella Modules e creare questi due file o sono necessari ulteriori dettagli nella risposta per aiutarmi a capire?
robgt,

Ho trovato questo ( github.com/bangerkuwranger/… ) che copre gli stessi dettagli di risposta, ma come modulo standard che puoi usare così com'è, o copiarlo nel tuo modulo. Questo potrebbe aiutare gli altri a capire meglio come eseguire queste attività.
robgt,

Ok, puoi creare quelle cartelle come se stessi creando un nuovo modulo.
Igor Revenko,
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.