Saltar al contenido

¿Cómo obtener la identificación del producto principal en magento 2?

Solución:

Para obtener la identificación del producto principal en su archivo phtml, puede llamar al código directamente de la siguiente manera:

    $productId = 52; //this is child product id
    $objectManager = MagentoFrameworkAppObjectManager::getInstance();
    $product = $objectManager->create('MagentoConfigurableProductModelResourceModelProductTypeConfigurable')->getParentIdsByChild($productId);
     if(isset($product[0])){
         //this is parent product id..
         echo $product[0];
    }

Puede llamarlo en un archivo de bloque, de forma específica de Magento por,

protected $_catalogProductTypeConfigurable;

public function __construct(
    MagentoCatalogBlockProductContext $context,
    //for getting parent id of simple
    MagentoConfigurableProductModelResourceModelProductTypeConfigurable $catalogProductTypeConfigurable,
    array $data = []
) {
    //for getting parent id of simple
    $this->_catalogProductTypeConfigurable = $catalogProductTypeConfigurable;
    parent::__construct($context, $data);
}

public function getProductData($id) {
    $parentByChild = $this->_catalogProductTypeConfigurable->getParentIdsByChild($id);
    if (isset($parentByChild[0])) {
        //set id as parent product id...
        $id = $parentByChild[0];
    }
    return $id;
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *