目标:1.自定义字段。2.启用新的产品类型,简化产品属性。3、能够对接定制产品的后续加工流程。参考:Magento_Downloadable模块博文状态:持续编辑中...简单教程:通过模块开发自定义产品类型忽略部分,如何创建模块并启用它(这部分可以在我的其他博文中看到)。关键流程:1.创建MODULE/etc/product_types.xml,内容可参考Magento_Downloadable.2。在这个XML文件中,需要指定“modelInstance”,即自定义商品类型的“类型实例”(在Magento2.x系统中,商品服务、商品模型、商品内容类型模型都是不同的,内容商品的类型模型是一个“类型实例”)。3.modelInstance="YOURVENDORYOURMODULEModelProductType"基本内容:其中:modelInstance=“MagentoDownloadableModelProductType”这是关键点。Magento系统的模块结构有点混乱。架构和业务模块至少在目录结构级别是混合的。在商品类型定义中,系统仍然直接连接到Magento_Catalog/Product,然后通过这个Model连接自己定义商品相关的操作。吐槽一下:Magento2.x的Model系统有点混乱,兼顾了数据模型、业务服务,甚至还有一些模板渲染。以下为代码跟踪测试记录:执行结果:*************************************[2018-03-2302:35:05]Magento\Catalog\Model\Product::getAttributes-813127.0.0.1--------Mozilla/5.0(Macintosh;IntelMacOSX10_12_6)AppleWebKit/537.36(KHTML,likeGecko)Chrome/65.0.3325.162Safari/537.36------------------------------------------string(39)"Magento\Downloadable\Model\Product\Type"