Magento 2 — getCollection возвращает только простые продукты

Я пытаюсь получить все продукты. Я делаю так:

$objectManager->get('Magento\Catalog\Model\Product')
->getCollection()
->addAttributeToSelect('*');

Но возвращаются только простые продукты.

Получение НЕ ВОЗВРАЩЕННЫХ продуктов по sku работает нормально:

$p = $objectManager->create('\Magento\Catalog\Model\ProductRepository')->get($sku);

Любая идея?
Заранее спасибо.


Magento версия 2.2.0

0

Решение

Magento2 имеет концептуальный вызов Factory, это фон для вызова модельного объекта. Поэтому я думаю, что вы должны создать новую Фабрику перед вызовом объектной модели

$objectManager->get('\Magento\Catalog\Model\ProductFactory')->create()
->getCollection()
->addAttributeToSelect('*');
0

Другие решения

Попробуй это

В вашем файле блока

<?php
namespace Mageplaza\HelloWorld\Block;
class HelloWorld extends \Magento\Framework\View\Element\Template
{
protected $_productCollectionFactory;

public function __construct(
\Magento\Backend\Block\Template\Context $context,
\Magento\Catalog\Model\ResourceModel\Product\CollectionFactory $productCollectionFactory,
array $data = []
)
{
$this->_productCollectionFactory = $productCollectionFactory;
parent::__construct($context, $data);
}

public function getProductCollection()
{
$collection = $this->_productCollectionFactory->create();
$collection->addAttributeToSelect('*');
return $collection;
}
}
?>

и ваш .phtml файл

$productCollection = $block->getProductCollection();
foreach ($productCollection as $product) {
print_r($product->getData());
echo "<br>";
}

это дает сгруппированный и настраиваемый продукт также
это Wikk работа для меня, пожалуйста, попробуйте это

Вы можете попробовать также эту ссылку:
https://www.mageplaza.com/how-get-product-collection-magento-2.html

0

По вопросам рекламы [email protected]