logo

额外区块类型 (EBT) - 全新的布局构建器体验❗

额外区块类型 (EBT) - 样式化、可定制的区块类型:幻灯片、标签页、卡片、手风琴等更多类型。内置背景、DOM Box、JavaScript 插件的设置。立即体验布局构建的未来。

演示 EBT 模块 下载 EBT 模块

❗额外段落类型 (EPT) - 全新的 Paragraphs 体验

额外段落类型 (EPT) - 类似的基于 Paragraph 的模块集合。

演示 EPT 模块 滚动

滚动

7.2.1. 基于 Bootstrap 创建主题:在 PhpStorm 中配置 LESS 编译器以配合我们的主题工作。

17/10/2025, by Ivan

bootstrap

在之前的课程中,我们已经学习了如何基于另一个 Stable 主题创建自定义主题。在本教程中,我们将演示如何基于 Bootstrap(一个流行的网页布局框架)创建 Drupal 主题。

假设您已经安装好了 Drupal。接下来我们开始安装 Bootstrap:

https://www.drupal.org/project/bootstrap

与 Drupal 7 不同,在 Drupal 8 中,所有主题都应放在站点根目录下的 /themes 文件夹中:

Bootstrap

若要创建基于 Bootstrap 的自定义主题,需要创建一个 子主题(sub-theme)。子主题文件夹可从父主题中复制:

/themes/bootstrap/starterkits/less

less

less 文件夹复制到 /themes 目录,与 bootstrap 同级,然后将其重命名为您的主题名称,例如 drupalbook。同时,将以下文件中的 THEMENAME 替换为主题名:

  • THEMENAME.libraries.ymldrupalbook.libraries.yml
  • THEMENAME.starterkit.ymldrupalbook.info.yml
  • THEMENAME.themedrupalbook.theme

drupalbook

然后打开 drupalbook.info.yml 文件,在 libraries 部分中也修改名称:

libraries:
  - 'drupalbook/global-styling'
  - 'drupalbook/bootstrap-scripts'

建议也修改主题名称:

name: 'Bootstrap Drupalbook Sub-Theme (LESS)'

同时重命名配置文件:

/config/install/drupalbook.settings.yml
/config/schema/drupalbook.schema.yml

config

接下来,下载 Bootstrap 框架的源码版本:

http://getbootstrap.com/getting-started/#download

https://getbootstrap.com/docs/4.3/getting-started/download/

我们需要的是包含 LESS 源文件 的源码版本,而不是已经编译好的 CSS 版本:

source

在子主题中创建一个 bootstrap 文件夹,并将下载的 Bootstrap 源码文件复制进去:

bootstrap

请确保复制的是源码版本,以便我们在主题中覆盖 Bootstrap 的变量文件:

/less/overrides.less
/less/variable-overrides.less

ovverides

您也可以选择使用 SASS 版本的 Bootstrap,但那需要安装 SASS 编译器。这里我们使用 PhpStorm 自带的 LESS CSS 编译器

现在可以进入 Drupal 的外观设置页面启用主题:

/admin/appearance

此时样式尚未生效,因为 Bootstrap 的 LESS 文件还未编译。我们将使用 PhpStorm 的 LESS Compiler 插件 进行编译。

打开 PhpStorm 设置:
文件 → 设置(File → Settings)

php storm

  • 打开 Plugins(插件)页面
  • 搜索关键词 “LESS”
  • 找到 LESS CSS Compiler 插件
  • 点击 “Install JetBrains plugin …” 进行安装

如果无法直接找到插件,可从官方网站下载:

https://plugins.jetbrains.com/plugin/7059-less-css-compiler

下载后通过 “Install plugin from disk …” 安装。

安装完成后,在 PhpStorm 设置中搜索 “LESS” 打开插件配置界面:

less profiles

点击 “+” 新建一个 LESS 编译配置文件(Profile),命名为 Bootstrap。每个项目需单独创建一个配置。

less profiles

配置参数如下:

LESS source directory:
C:\OpenServer\domains\drupal8\themes\drupalbook\less

这是主题的 LESS 文件目录,而不是 Bootstrap 的 less 文件夹,因为我们从 style.less 文件中加载 Bootstrap。

Include files by path:
C:\OpenServer\domains\drupal8\themes\drupalbook\less\style.less

我们只需编译 style.less 文件,它是所有 LESS 文件的入口,其余文件会自动被导入并编译。

CSS output directory:
C:\OpenServer\domains\drupal8\themes\drupalbook\css

编译后会生成一个 style.css 文件,非常方便。虽然每次都会重新编译整个 Bootstrap,但省去了手动链接多个文件的麻烦。

Compile automatically on save:
启用后,每次保存文件(Ctrl + S)时会自动重新编译。建议开启。

保存设置后,按下 Ctrl + S 即可触发编译。您也可以右键点击 style.less 文件并选择 “Compile to CSS” 手动编译:

compile

编译通常需要 5–10 秒:

compile

如果编译成功,您将看到新的样式效果:

bootstrap

别忘了在 Drupal 管理后台禁用 CSS 和 JavaScript 聚合:

/admin/config/development/performance

perfomance

默认情况下这些选项是启用的。

现在您可以开始进行页面布局工作,Bootstrap 自带的响应式布局和汉堡菜单(mobile hamburger menu)将自动生效。

mobile

要启用移动菜单,请将菜单区块放入 Navigation (Collapsible) 区域:

navigation

在接下来的课程中,我们将基于 Bootstrap 为主题创建 PSD 页面布局。