Theme Lab 是一个 Drupal 主题评估实验站,基于 Drupal Application Base (DAB) v0.1.2(Drupal 11.4 / PHP 8.4 / MariaDB 11.8 / nginx)部署,用于横向体验四个主题 Profile。
实验设计
站点只安装一次,内容一套;通过自定义的 URL 参数主题协商器实现即时切换:在任意前台页面 URL 后加 ?theme=主题机器名,该请求即以对应主题渲染。
| Profile | 主题 | 用途 | 机器名 |
|---|---|---|---|
| Content | Olivero(核心) | 内容站 | olivero |
| Application | Bootstrap5 4.0 | 小工具 / SaaS | themelab_bs5(基主题是裸起点,设计由子主题定制) |
| Component | Radix 6.0 | 复杂产品 | themelab_radix(Radix 基主题不含编译产物,须以子主题使用) |
| Site Builder | UI Suite Bootstrap 5.2 | Wix 类搭建产品 | ui_suite_bootstrap |
| Extra | Barrio 5.5 | Bootstrap 系传统企业站(下载量最高的 Bootstrap 主题之一) | bootstrap_barrio |
技术备注
- 主题切换由本站的
themelab_demo模块实现(一个 20 行的 ThemeNegotiator,URL 参数?theme=);contrib 里的 switch_page_theme 尚不支持 Drupal 11。Radix 演示用的是编译好的子主题themelab_radix(npm run build);Bootstrap5 同理,演示的是设计过的子主题themelab_bs5(官方 generate-subtheme + 自定义样式层)。 - 管理后台固定使用 Gin,不受 URL 参数影响。
- 演示内容(6 篇文章 + 5 个页面 + 标签 + 题图)由
scripts/demo-content.php幂等生成,可随时重跑。