Quiero recuperar todos los atributos del producto que están disponibles, luego convertirlo a nombre y valor para mi campo de opciones de selección. En Magento 1 puedo lograrlo así:
public function getMagentoAttributes()
{
$values[] = array(
'value' => '',
'label' => 'Pick Product Attribute'
);
$categories = Mage::getResourceModel('catalog/product_attribute_collection')->getItems();
foreach ($categories as $category) {
if ($category->getFrontendLabel() != '') {
$label = $category->getFrontendLabel();
} else {
$label = $category->getAttributecode();
}
$values[] = array(
'value' => $category->getAttributecode(),
'label' => $label
);
}
return $values;
}
¿Hay alguna manera en magento 2 para hacer lo mismo?
magento-2.1
product-attribute
chico sencillo
fuente
fuente
Respuestas:
Aquí puede tener una colección completa de atributos, puede filtrarla según sus necesidades.
fuente
foreach
puede obtenergetAttributeId()
tan bien comogetAttributeName()
echo "<pre>"; print_r($attributes);exit;
use esto en foreach y verifiqueOtra idea es que deberíamos probar con la capa de contratos de servicio .
Use
Magento\Eav\Api\AttributeRepositoryInterface
para obtener el atributo eav.Ya tengo una respuesta aquí: /magento//a/161426/33057
Por ejemplo:
NOTA: Para el código de tipo de entidad en el
getList
método, podemos encontrarlo en laeav_entity_type
tabla.fuente