Composer 模版,初始化dyniva发行版.
更多细节查看dyniva
先安装 composer.
安装成功后创建项目,初始化安装:
composer create-project davyin/dyniva-project dyniva-project --stability dev --no-interaction
cd dyniva-project
composer install
drush si dyniva --site-name="Dyniva Project" --db-url=mysql://mysql-user:mysql-password@mysql-host:3306/dyniva_project --account-pass=admin -y
如果需要引入其他drupal 模块/主题,使用 composer require ...
下载安装:
cd dyniva-project
composer require "drupal/devel:1.x-dev"
The composer create-project
command passes ownership of all files to the
project that is created. You should create a new git repository, and commit
all files not excluded by the .gitignore file.
- Drupal 安装在
docroot
目录. - drupal官方模块 (packages of type
drupal-module
) are placed indocroot/modules/contrib/
- dyniva自定义模块 (packages of type
drupal-custom-module
) are placed indocroot/modules/custom/
- drupal官方主题(packages of type
drupal-theme
) are placed indocroot/themes/contrib/
- dyniva自定义主题(packages of type
drupal-custom-theme
) are placed indocroot/themes/custom/
- Profiles (packages of type
drupal-profile
) are placed indocroot/profiles/contrib/
- dyniva自定义Profiles (packages of type
drupal-custom-profile
) are placed indocroot/profiles/custom/
- -- Creates default writable versions of
settings.php
andservices.yml
-- - 创建
docroot/sites/default/files
directory. - 最新版本的drupal console安装在
bin/drupal
. - 删除项目非根目录下的.git(因为有些模块通过branch引入的,如果不删除会生成.git文件,导致git提交的时候为git submodule,这样在部署的时候会带来很多麻烦)
- 安装ergebnis/composer-normalize插件,在执行composer update/install之后自动会composer.json进行格式化(使用4个空格的缩进)
补丁使用cweagans/composer-patches来管理。使用本项目的补丁通过composer.json引入,强烈不建议通过单独的补丁文件管理。 例如,给drupal core打补丁,可以参考如下格式: section of composer.json:
"extra": {
"patches": {
"drupal/foobar": {
"Patch description": "URL to patch"
}
}
}
该项目不限定Drupal内核版本,版本受dyniva约束。具体可以查看Dyniva说明。
It is possible to use frontend libraries with composer thanks to the asset-packagist repository (https://asset-packagist.org/).
For example, to use colorbox:
composer require npm-asset/colorbox:"^0.4"
Composer will detect new versions of the library that meet your constraints. In the above example it will download anything from 0.4.* series of colorbox.
When managing libraries with composer this way, you may not want to add it to version control. In that case, add specific directories to the .gitignore file.
# Specific libraries (which we manage with composer)
web/libraries/colorbox
For more details, see https://asset-packagist.org/site/about
To prevent this you can add this code to specify the PHP version you want to use in the config
section of composer.json
:
"config": {
"sort-packages": true,
"platform": {
"php": "7.2.22"
}
},