Noté que Magento 2 contiene varios catalog_attributes.xmlarchivos en las siguientes carpetas:
app/code/Magento/Bundle/etcapp/code/Magento/Catalog/etcapp/code/Magento/CatalogSearch/etcapp/code/Magento/CatalogUrlRewrite/etcapp/code/Magento/Downloadable/etcapp/code/Magento/GiftMessage/etcapp/code/Magento/Msrp/etcapp/code/Magento/Sales/etcapp/code/Magento/Tax/etcapp/code/Magento/Wishlist/etc
Esos archivos se ven así (ejemplo para el Salesarchivo):
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Catalog:etc/catalog_attributes.xsd">
<group name="quote_item">
<attribute name="sku"/>
<attribute name="type_id"/>
<attribute name="name"/>
<attribute name="status"/>
<attribute name="visibility"/>
<attribute name="price"/>
<attribute name="weight"/>
<attribute name="url_path"/>
<attribute name="url_key"/>
<attribute name="thumbnail"/>
<attribute name="small_image"/>
<attribute name="tax_class_id"/>
<attribute name="special_from_date"/>
<attribute name="special_to_date"/>
<attribute name="special_price"/>
<attribute name="cost"/>
<attribute name="gift_message_available"/>
</group>
</config>
¿Para qué se usan esos archivos?
magento2
attributes
magento-2.0
magento-2.0.5
Raphael en Digital Pianism
fuente
fuente

Respuestas:
En general, estos archivos contienen una lista de atributos que sirven para diferentes propósitos.
El grupo
used_in_autogenerationdel archivo en el módulo de catálogo sirve para enumerar atributos que tienen el valor autogenerado.Son recuperados en
\Magento\Catalog\Helper\Product::getAttributesAllowedForAutogenerationEl grupo
quote_itemrepresenta los atributos que se copiarán del producto al artículo de presupuesto.unassignablecontiene la lista de atributos que no se pueden asignar de ningún conjunto de atributos.Lo siento, pero no conozco todos los grupos disponibles.
Pero no está limitado solo a los grupos existentes. Puede agregar los suyos y usarlos como desee simplemente llamando
\Magento\Catalog\Model\Attribute\Config::getAttributeNames('group_name_here'). (pero instanciar la clase primero).[EDIT]
No estoy seguro acerca de esto, pero yo cosa
catalog_categoryycatalog_productgrupos mantienen los atributos del sistema para los productos y categorías.fuente
Justo ayer me topé con eso por primera vez. Se usa, por ejemplo, para agregar atributos personalizados para cotizar productos de artículos, de lo contrario no se cargarán para ahorrar recursos (en mi caso, quería mostrar el
coloratributo en la página del carrito). En Magento 1 ingresarías algo como esto en tu móduloconfig.xml:Para lograr lo mismo en M2, debe agregar un
catalog_attributes.xmla su módulo y hacer lo siguiente:fuente