shopware / composer-project
使用 composer 的 Shopware 项目模板
Requires
- php: ^7.4 || ^8.0
- composer-runtime-api: ^2.0.0
- composer/installers: ^1.0
- shopware/shopware: ~5.7.7
- vlucas/phpdotenv: ^3.1
README
从 v5.4 版本开始,Shopware 支持使用 composer 进行安装。早期版本不支持。
安装
composer create-project shopware/composer-project my_project_name --no-interaction --stability=dev
这将把包含所有必需依赖的存储库克隆到新的目录 my_project_name 中。然后您可以删除该项目的 .git 目录以删除项目历史并从头开始执行 git init .,或者保留历史并仅添加自己的远程仓库进行推送。
之后,您可以通过提供 .env 文件来定义数据库凭据、商店 URL 和 Shopware 版本,或者使用交互式安装程序为您创建一个。
要使用安装程序,只需运行
$ ./app/bin/install.sh
配置
配置设置,如特定环境的数据库设置、API 令牌、服务器 IP 或任何类型的凭据,应通过环境变量设置。这样,您就不必在项目中包含任何特定环境或敏感信息。您可以使用 .env 文件进行本地开发或作为备用方案。
您还可以在 app/services.xml 中配置一些通用项目服务。例如,错误日志配置为使用 stderr 输出,而不是位于 var/log 目录中的默认日志文件。应使用插件提供新的和附加的服务。
更新 Shopware
在 composer.json 中更新 shopware/shopware 的版本号。然后运行 composer update shopware/shopware 安装新版本。不要忘记在项目之后提交新的 composer.lock 文件。
准备插件以供 composer 安装
假设您有一个名为 SwagMediaSftp 的插件,请将您的依赖项添加到您的插件 composer.json 文件中。还将 type 设置为 shopware-plugin。有关完整插件的详细信息,请参阅 SwagMediaSftp 存储库。
{
"name": "shopwarelabs/swag-media-sftp",
"type": "shopware-plugin",
"description": "The SFTP adapter allows you to manage your media files in shopware on a SFTP environment.",
"license": "MIT",
"extra": {
"installer-name": "SwagMediaSftp"
},
"require": {
"league/flysystem-sftp": "^1.0"
}
}
有关可用 Shopware 相关类型的完整列表,请参阅 Composer Installers 存储库。
插件
如上所述安装的插件将安装到 custom/plugins/ 中,遗留的 Shopware 插件将安装到 Plugins/ 中。这些目录包含在仓库的 .gitignore 中,因此通过 composer 安装的插件不会被 git 跟踪。
如果您需要一些特定于项目的插件,您不希望通过 composer 将它们添加到项目中但通过此仓库跟踪它们,则可以将它们添加到 custom/project 目录中。仅支持使用新插件风格的插件。