扩展和自定义SaaS数据导出馈送数据
Commerce Data Export扩展提供了一种将数据从Commerce应用程序导出到Commerce服务(如Live Search、目录服务和产品Recommendations)的方法。 如果需要,您可以扩展和自定义馈送数据,以包含其他属性数据或修改收集的数据。
添加属性数据后,可从店面服务的GraphQL架构中的属性字段访问它。
扩展产品信息源中的系统属性数据
产品信息源包括产品处理所需的或消费者常用的默认系统属性。 通过将其他系统属性添加到产品信息源,您可以在产品信息源中包含这些属性。
要完成此任务,请更新magento/catalog-data-exporter
模块以将其他系统属性添加到依赖项注入配置文件 (di.xml
)。
将属性添加到产品属性查询(Magento\CatalogDataExporter\Model\Query\ProductAttributeQuery
)。
示例
<type name="Magento\CatalogDataExporter\Model\Query\ProductAttributeQuery">
<arguments>
<argument name="systemAttributes" xsi:type="array">
<item name="news_from_date" xsi:type="string">news_from_date</item>
...
<item name="some_system_attribute_code">some_system_attribute_code</item>
</argument>
</arguments>
</type>
将产品属性添加到Adobe Commerce
开发人员可以使用以下方法之一添加可从产品属性字段访问的产品属性:
- 将属性添加到Adobe Commerce,以包含在导出到Commerce店面服务的
products
信息源数据中。 - 在使用插件的馈送同步过程中动态添加属性。
将属性添加到Adobe Commerce
您可以通过Commerce管理员添加产品属性,或者使用自定义PHP模块以编程方式定义属性并更新Adobe Commerce。 这是添加产品属性的最简单方法,因为您可以添加属性和所有必需的元数据。 在下次计划同步期间,新属性及其元数据属性会自动导出到SaaS服务。
从管理员创建产品属性
-
在Commerce管理员中,从产品属性配置页面(Stores > Attributes > Product)创建属性。
-
根据需要将属性添加到属性集。
请参阅 Adobe Commerce管理指南 中的创建产品属性。
以编程方式创建产品属性
通过创建实现DataPatchInterface
的数据修补程序以编程方式添加产品属性,并在构造函数中实例化EavSetup Factory
类的副本以配置属性选项。
定义属性选项时,除type
、label
和input
之外的所有属性参数都是可选的。 定义以下附加选项以及与默认设置不同的任何其他选项。
- 通过设置
user_defined
=1
,确保属性在数据同步期间导出到storefront服务 - 若要确保在产品列表数据库查询中可访问该属性,请设置
used_in_product_listing
=1
。
有关创建数据修补程序的信息,请参阅 PHP Developer Guide 中的开发数据和架构修补程序。
动态添加产品属性
有关在不引入新Eav属性的情况下动态创建产品属性的详细信息,请参阅动态添加属性。