aegir / hostmaster-project
Aegir Hostmaster的项目模板。
Requires
- php: >=5.3.3
- ext-curl: *
- ext-gd: *
- ext-json: *
- ext-openssl: *
- ext-pdo: *
- ext-xml: *
- composer/installers: ^1.2
- composer/semver: ^1.4
- cweagans/composer-patches: ^1.6.5
- drupal-composer/preserve-paths: ^0.1
- drupal/composer_autoloader: ^1.0
- drupal/drupal: ^7.62
- drupal/hostmaster: dev-4.x
- drush/drush: ^8.0
- symfony/filesystem: ~2.7|^3
- webflo/drupal-finder: ^1.0.0
Conflicts
- drupal/core: 8.*
This package is auto-updated.
Last update: 2024-08-29 05:28:44 UTC
README
此项目模板为Aegir Hostmaster Drupal发行版的入门套件。
用法
首先您需要安装composer。
注意:以下说明参考了全局composer安装。您可能需要根据您的配置将
composer
替换为php composer.phar
(或类似)。
之后您可以创建项目
composer create-project aegir/hostmaster-project:dev-master --no-interaction /var/aegir/hostmaster-7.x-4.x
使用composer require ...
您可以将新的依赖项下载到您的安装中。
cd some-dir
composer require drupal/devel:~1.0
composer create-project
命令将所有文件的拥有权传递给创建的项目。您应该创建一个新的git仓库,并将所有未被.gitignore文件排除的文件提交。
模板做什么?
在安装给定的composer.json
时,一些任务会得到处理
- Drupal将安装在
web
目录下。 - 模块(类型为
drupal-module
的包)将放在web/sites/all/modules/contrib/
- 主题(类型为
drupal-module
的包)将放在web/sites/all/themes/contrib/
- 配置文件(类型为
drupal-profile
的包)将放在web/profiles/
- 库(类型为
drupal-library
的包)将放在web/sites/all/libraries/
(见库) - 帮助使用其他PHP包,几乎类似于Drupal 8版本
- 创建默认可写版本的
settings.php
。 - 创建
web/sites/default/files
目录。 - 将最新版本的drush安装在本地,以便在
vendor/bin/drush
中使用。
从现有项目生成composer.json
使用"Composer Generate" drush扩展,您现在可以从现有项目中生成基本的composer.json
文件。请注意,生成的composer.json
可能与本项目文件不同。
如何在您的Drupal 7网站上启用Composer自动加载器
骨架已安装了composer_autoloader
模块。只需在启用任何可能依赖各种包的模块之前,在网站上启用它即可。
库
库通常是需要公开可用的额外包(CSS和JS)。通常这些包不是使用Composer维护的,但如果您想拥有100%的Composer部署并从composer.json
中受益,您可以使用此示例,更改repositories
部分并在require
部分中添加
"repositories": [
...
{
"type": "package",
"package": {
"name": "kenwheeler/slick",
"version": "1.6.0",
"dist": {
"url": "https://github.com/kenwheeler/slick/archive/1.6.0.zip",
"type": "zip"
},
"source": {
"url": "https://github.com/kenwheeler/slick.git",
"type": "git",
"reference": "1.6.0"
},
"type": "drupal-library"
}
}
],
"require": {
...
"kenwheeler/slick": "~1.6.0"
},
之后运行composer update --lock
来安装仅手动管理的包。(如果您只添加包定义,也可以运行composer require "kenwheeler/slick:~1.6.0"
)
常见问题解答
我应该提交下载的contrib模块吗?
Composer建议不要。他们提供了论证,但也提供了如果项目决定这样做的话的解决方案。
如何应用下载的模块的补丁?
如果您需要应用补丁(根据正在修改的项目,pull request通常是更好的解决方案),您可以使用composer-patches插件。
要向drupal模块foobar添加补丁,请在composer.json的extra部分中插入patches部分
"extra": { "patches": { "drupal/foobar": { "Patch description": "URL or local path to patch" } } }
如何从packagist.drupal-composer.org切换到packages.drupal.org?
请遵循在 drupal.org 上的文档中的说明。
如何指定 PHP 版本?
此项目支持 PHP 5.3 作为最低版本(见 Drupal 7 PHP 要求),然而,执行 composer update
可能会升级某些包,从而需要 PHP 7+。
为了防止这种情况,您可以在 composer.json
文件的 config
部分添加以下代码来指定您希望使用的 PHP 版本:
"config": { "sort-packages": true, "platform": { "php": "5.3.3" } },