新增配置插件
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
yiqiu
2025-11-20 23:37:31 +08:00
parent 3e345e9e22
commit 8a1fa3fb8b
14 changed files with 923 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
# Theme Configurator 插件
此插件演示如何通过后台插件的方式为 BlackFruit-UI 主题提供可配置能力支持设置导航、页脚、站点信息、SEO、首页轮播以及右侧浮窗并提供 `/console/v1/theme/config` 接口与前端联动。
## 功能
- 后台界面(`template/admin/index.php`)以 JSON 的形式集中维护所有主题参数;
- 接口 `GET/POST /{DIR_ADMIN}/v1/theme/config` 提供配置读取与保存;
- 前台接口 `GET /console/v1/theme/config` 输出与 `/console/v1/common` 相同结构的数据BlackFruit-UI 可以直接接入;
- 插件安装时创建 `addon_theme_configurator` 表并写入默认配置。
## 目录
```
plugins/addon/theme_configurator
├── ThemeConfigurator.php # 插件主文件
├── controller/
│ ├── ThemeController.php # 后台 API
│ └── clientarea/ThemeController.php # 前台 API
├── model/ThemeConfigModel.php # 主题配置模型
├── template/admin/index.php # 后台可视化页面
├── route.php # 自定义路由定义
├── sidebar*.php # 前后台导航
├── auth.php # 权限配置
└── lang/zh-cn.php # 多语言
```
## 使用步骤
1. 将目录复制到业务系统的 `public/plugins/addon` 下;
2. 在后台启用插件,安装脚本会自动创建 `addon_theme_configurator` 表;
3. 进入“插件 > 主题配置”页,按 JSON 结构维护导航、SEO、轮播、侧边栏等
4. 前端 BlackFruit-UI 请求 `/console/v1/theme/config` 以获取运行时配置。若需要兼容现有 `/console/v1/common`,可在 Nginx 或网关层做转发。