Продукты не отображаются в подкатегории Magento2

Я установил новый magento2, а топ-категории работают, но для подкатегории нет продукта, который появляется в интерфейсе, даже если я назначил продукты этим подкатегориям.

Всегда говорят: «Мы не можем найти продукты, соответствующие выбору».

Где я могу найти код в Magento 2, который отвечает за отображение продуктов, чтобы я мог диагностировать это в программном ключе?

magento,magento2,magento-2.0,

6

Ответов: 6


4

Чтобы показать продукт, проверьте, есть ли у продукта следующие параметры:

  1. Общее-> Статус = Включено
  2. общий-> Видимость = Каталог, Поиск
  3. Инвентарь-> Кол-во> 0
  4. Инвентарь-> Наличие на складе = на складе
  5. Веб-сайты = проверка вашего сайта
  6. Catgories = проверка вашей категории.

Если вы хотите проверить продукт подкатегории, перейдите в каталог - > Управление категории - > Выберите категорию , откройте вкладку Параметры дисплея и вариант изменения «Есть Якорь» на «Да» . Сохранить категорию.


4

Вы можете попробовать reindexing.it, если все это установлено

1.General-> Status = Enabled

2.general-> Видимость = Каталог, Поиск

3.Inventory-> Qty> 0

4.Inventory-> Доступность акций = на складе

5.Websites = проверка вашего сайта

6.Catgories = проверка вашей категории.


2

Введите в командной строке следующую команду:

php bin/magento indexer:status

Если один из индексов - «Обработка», перейдите в базу данных MySQL и перейдите в таблицу indexer_state. Вы заметите, что одним из значений является «Работа», а остальное - «Действительный»,

Установите параметр «Работа с недопустимым и повторным индексированием». Лучший способ сделать это - запустить следующий запрос:

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

Удачи!


2

Подкатегория Решение проблемы с продуктом, поскольку вам нужно следовать ниже:

Magento 2 Admin ==> Продукты ==> Категория ==> Подкатегория ==> Дизайн ==> Использовать настройки родительской категории ==> Проверено здесь

введите описание изображения здесь


1

Это связано с проблемой переиндексации.

Приложение код Modules Каталог и т.д. 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="MagentoCatalogModelIndexerCategoryProductActionFull" type="ModulesCatalogModelIndexerCategoryProductActionFull" />
</config>

Приложение код Modules Каталог Model Индексатор Категория Продукт Action Full.php

<?php 
namespace ModulesCatalogModelIndexerCategoryProductAction;

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

class Full extends MagentoCatalogModelIndexerCategoryProductActionFull {

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

Затем мы должны запустить эту команду.

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

Наконец, мы получили целые 2000 продуктов на нашей странице категории вместо предыдущих 340 продуктов на странице frontend. Кроме того, вкладка «Категория продукта» для управления индексами обновляется только с даты обновления версии до текущей даты и времени индексирования.

Отличный опыт!

Надеюсь, это поможет многим разработчикам и владельцам.

magento, magento2, magento-2.0,
Похожие вопросы