joachim-n / automultisites
此包的最新版本(1.0.2)没有可用的许可信息。
提供在基于文件夹结构的自动多站点运行Drupal的辅助代码。
1.0.2
2022-01-13 07:05 UTC
Requires
- symfony/yaml: *
README
这是一个用于在本地Drupal项目中快速创建新子站点的辅助程序集合。通常,使用项目代码库创建新站点很有用,无论是为了在全新安装上进行调试或原型设计,还是为了快速在数据库的不同副本之间切换。
子站点使用子文件夹,因此无需创建新的虚拟主机。
在Drupal根目录中创建一个指向自身的符号链接,允许Drupal像在子文件夹中一样运行,从而使多站点系统将其视为不同的站点。
兼容性
- Drush命令需要Drush ^10.5。
- 这完全不兼容joachim-n/drupal-core-development-project Composer项目模板。
术语
每个子站点都有一个站点目录,它是sites/
中的子目录。它们有一个共同的prefix,默认为local-
。prefix后面的部分称为站点密钥,例如,在这个目录列表中
- default
- local-alpha
- local-beta
站点密钥是'alpha'和'beta'。
安装
使用Composer安装:composer require joachim-n/automultisites
。
Drush命令
要使用Drush创建新的子站点,请执行以下操作
$ drush multisite:new SITE-KEY
手动说明
如果没有Drush,请执行以下操作
- 如果不存在,则将sites/example.sites.php复制到sites/sites.php
- 在sites.php中,添加以下代码
$sites = []; // Necessary workaround for Drush.
\Automultisites\Sites::addLocalSites($sites, $app_root);
- 创建Drupal根目录到自身的符号链接
$ cd web
$ ln -s . local-alpha
- 创建一个新的站点文件夹
$ cd web/sites
$ mkdir local-alpha
- 将其复制到settings.php
$ cp web/sites/default/default.settings.php web/sites/local-alpha/settings.php
- 在新的settings.php文件中,添加以下代码
Automultisites\Settings::configureSiteSettings(
$app_root,
$site_path,
$databases,
$settings,
$config
);
- 要创建Drush站点别名,创建一个文件drush/sites/local.site.yml,并在其中添加以下内容
alpha:
root: /path/to/project/web
uri: localhost.local-alpha