Я хочу применить фильтр видимости и статуса к коллекции товаров. Как в Magento 1 мы делаем:
Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($collection);
Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($collection);
Я получаю коллекцию продуктов в Magento 2, но не могу найти функцию для применения вышеуказанных фильтров.
magento2
magento2-dev-beta
Шахир Али
источник
источник
SearchCriteriaBuilder
при использованииProductRepositoryInterface
? (См. Magento.stackexchange.com/a/84347/60128. )Это должно работать для вас:
Используемые классы:
Просмотрите эти классы, чтобы проверить другие методы, чтобы получить возможные значения состояния или видимости.
Тем не менее, пересмотрите концепцию репозиториев, насколько я видел, Magento 2 рекомендует использовать репозиторий для доступа к данным о продуктах вместо использования сбора. Например:
источник
для сбора продуктов с включенным статусом и видимостью:
Вы можете попробовать с приведенным ниже кодом
для этого кода работает для типа видимости, как:
источник