Cómo anular bloque, modelo y controlador en Magento 2

Estás leyendo la publicación: Cómo anular bloque, modelo y controlador en Magento 2

espacio de nombres [Vendor]\[Module]\Modelo\Reescribir;

use Magento\Catalog\Api\ProductRepositoryInterface;

use Magento\Framework\Pricing\Helper\Data;

clase ConfigurableAttributeData extiende \Magento\ConfigurableProduct\Model\ConfigurableAttributeData

{

$productRepository privado;

privado $ ayudante de precios;

función pública __construir(

ProductRepositoryInterface $productRepository,

$priceHelper de datos

)

{

$this->productRepository = $productRepository;

$this->priceHelper = $priceHelper;

}

función protegida getAttributeOptionsData($atributo, $config)

{

$attributeOptionsData = [];

foreach ($atributo->getOptions() como $atributoOpción) {

$opciónId = $atributoOpción[‘value_index’];

$producto_detalles = $config[$attribute->getAttributeId()][$optionId];

$productId = $producto_detalles[0];

$producto = $este->productRepository->getById($productId);

$attributeOptionsData[] = [

                    ‘id’ => $optionId,

                    ‘label’ => $attributeOption[‘label’],

‘productos’ => isset($config[$attribute->getAttributeId()][$optionId])

? $config[$attribute->getAttributeId()][$optionId]

: [],

‘sku’ => $producto->getSku(),

‘childProductPrice’ => $this->priceHelper->currency($product->getFinalPrice(), true, false),

];

}

devolver $attributeOptionsData;

}

}

🔥 Recomendado:  ¿Qué es la Automatización de Incidentes? - Unite.AI