如何在Magento2中获得可配置产品的简单产品

尽管当您要经营电子商务业务时,有很多使用Magento 2的理由,但可配置产品的简单性吸引了越来越多的商人使用该平台。并且所需的功能默认情况下可用!

作为商店管理员,您可以利用Magento 2的即用型功能来确定简单到可配置的产品关联所基于的属性。该平台允许您使用单个属性来创建最直接的可配置产品(特定型号的士力架,可以提供不同的尺寸),也可以利用其中的一堆商品(可以提供不同尺寸和颜色的T恤衫)。

下面,我们提供了来自 Magento2博客中发表的文章。它显示了如何在对象管理器的帮助下加载可配置产品,以将所有子产品作为一个数组。在子产品下,我们假设所有与可配置产品相​​关联的简单产品都是父产品。这是示例代码片段:

$product_id = 1;  //商品id
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$configProduct = $objectManager->create('Magento\Catalog\Model\Product')->load($product_id);

//$StockState    = $objectManager->get('\Magento\CatalogInventory\Api\StockStateInterface');
//$total_stock   = 0;

$productArr = [];
$_children = $configProduct->getTypeInstance()->getUsedProducts($configProduct);
foreach ($_children as $child){
    echo "Here are your child Product Ids ".$child->getID()."\n";
 echo  "+qty:" .$StockState->getStockQty($simple->getId(), $simple->getStore()->getWebsiteId());
         echo  "+id:"  .$simple->getId();
        $productArr[$key]['sku'] = $simple->getSku();
        $productArr[$key]['isAvailable'] = $simple->isAvailable();
        $productArr[$key]['price'] = $simple->getPrice();
}
echo "count: ".count($_children);

在对象管理器的帮助下,使用它通过product_id加载可配置产品。如果要获取一组关联的简单产品,则只需从对象类型实例调用getUsedProducts()。