magento2
Konfigurierbare Produkte und deren Varianten.
Suche…
Holen Sie sich ein Elternprodukt und deren Kinder.
Hier zeige ich Ihnen, wie Sie abholen
- Alle übergeordneten Produkte (Konfigurationsprodukte)
- Ein übergeordnetes Produkt und alle seine Kinder.
Holen Sie sich ein übergeordnetes Produkt.
Wir beginnen mit einer einfachen Klasse, die alle unsere Eltern (konfigurierbare Produkte) erhält.
<?php
namespace Test\Test\Controller\Test;
use Magento\Framework\App\Action\Context;
class Products extends \Magento\Framework\App\Action\Action
{
public function __construct(
\Magento\Catalog\Model\ResourceModel\Product\CollectionFactory $_product_res_fac
)
{
$this->_product_res_fac = $_product_res_fac;
}
public function getParentProducts()
{
return $this->_product_res_fac->create()->addAttributeToSelect('*')->addAttributeToFilter('type_id', ['eq' => 'configurable']);
}
}
Wie Sie oben sehen, gibt unsere getParentProducts-Funktion jetzt alle Konfigurationsprodukte zurück, die wir derzeit in unserem System haben.
Holen Sie sich Eltern- und Kinderprodukte.
Hier holen wir zuerst unser Mutterprodukt und wir bekommen alle Kinderprodukte, die dieses Elternteil hat.
<?php
namespace Test\Test\Controller\Test;
use Magento\Framework\App\Action\Context;
class Products extends \Magento\Framework\App\Action\Action
{
public function __construct(
\Magento\Catalog\Model\Product $productModel
)
{
$this->product= $productModel;
}
public function getParentProduct()
{
return $this->product->load("a product entity id goes here")
}
public function getChildProducts()
{
$_children = $this->getParentProduct()->getTypeInstance()->getUsedProducts($this->getParentProduct());
}
}
Die Funktion getChildProducts gibt jetzt eine untergeordnete Auflistung zurück, sodass Sie sie durch eine foreach-Schleife ausführen können und alle Produktattribute abrufen können, die möglicherweise darin enthalten sind.
Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow