Cómo crear un conjunto de atributos programáticamente en Magento 2

Estás leyendo la publicación: Cómo crear un conjunto de atributos programáticamente en Magento 2

espacio de nombres Proveedor\Extensión\Configuración;

utilice Magento\Framework\Setup\InstallDataInterface;

use Magento\Framework\Setup\ModuleContextInterface;

use Magento\Framework\Setup\ModuleDataSetupInterface;

use Magento\Catalog\Setup\CategorySetupFactory;

use Magento\Eav\Model\Entity\Attribute\SetFactory como AttributeSetFactory;

clase InstallData implementa InstallDataInterface

{

privado $atributoSetFactory;

privado $ conjunto de atributos;

privado $categoríaSetupFactory;

función pública __construct(AttributeSetFactory $attributeSetFactory, CategorySetupFactory $categorySetupFactory )

{

$this->attributeSetFactory = $attributeSetFactory;

$this->categorySetupFactory = $categorySetupFactory;

}

instalación de función pública (ModuleDataSetupInterface $configuración, ModuleContextInterface $contexto)

{

$configuración->iniciarConfiguración();

$categorySetup = $this->categorySetupFactory->create([‘setup’ => $setup]);

$attributeSet = $this->attributeSetFactory->create();

$entityTypeId = $categorySetup->getEntityTypeId(\Magento\Catalog\Model\Product::ENTITY);

$attributeSetId = $categorySetup->getDefaultAttributeSetId($entityTypeId);

$datos = [

           ‘attribute_set_name’ => ‘MyCustomAttribute’,

           ‘entity_type_id’ => $entityTypeId,

           ‘sort_order’ => 200,

       ];

$conjuntoatributos->setData($datos);

$conjuntoatributos->validar();

$conjuntoatributos->guardar();

$atributoSet->initFromSkeleton($attributeSetId);

$conjuntoatributos->guardar();

$instalación->endSetup();

}

}

🔥 Recomendado:  Cómo Adrián Díaz está construyendo sitios afiliados como trabajador de la construcción a tiempo completo