magneto2 个人插件(模块)开发
插件常用指令
##原版介绍
module:disable Disables specified modules
module:enable Enables specified modules
module:status Displays status of modules
module:uninstall Uninstalls modules installed by composer
## 插件列表
php bin/magento module:status
## 安装插件
php bin/magento module:enable --clear-static-content <MODULE>
## 卸载插件(installed by composer)
php bin/magento module:uninstall --clear-static-content <MODULE>
## 禁用插件
php bin/magento module:disable --clear-static-content <MODULE>
插件文件结构
插件依赖关系
每个Magento 模块都负责一个独特的功能。实际上,这意味着:
多个模块不能负责一项功能。
一个模块不能负责多种功能。
必须明确声明对其他模块的模块依赖性。您还必须声明对其他组件的任何依赖关系(例如,主题,语言包或库)。
卸下或禁用模块不会导致禁用其他模块。
包含硬依赖与软依赖:
-
composer require:
app/code/<Vendor>/<Module>/composer.json "require": { "magento/module-catalog": "103.0.*", "magento/module-email": "101.0.*", "magento/module-media-storage": "100.3.*", "magento/module-store": "101.0.*", "magento/module-theme": "101.0.*", "magento/module-ui": "101.1.*", "magento/module-variable": "100.3.*", "magento/module-widget": "101.1.*", "magento/module-authorization": "100.3.*" } -
composer suggest or
app/code/<Vendor>/<Module>/composer.json "suggest": { "magento/module-graph-ql": "*", "magento/module-graph-ql-cache": "*", "magento/module-store-graph-ql": "*" }app/code/<Vendor>/<Module>/etc/module.xml <module name="Magento_Cms"> <sequence> <module name="Magento_Store"/> <module name="Magento_Theme"/> <module name="Magento_Variable"/> </sequence>