主题
03 目录结构
kede-finance/
├── app/ # ThinkPHP 应用代码
│ ├── admin/ # 后台控制器
│ ├── home/ # 前台 API 控制器
│ ├── api/ # 支付回调等
│ ├── common/ # 公共服务、模型、驱动
│ │ ├── service/ # PluginService, MarketplaceService, PaymentService...
│ │ ├── lib/ # Plugin 基类、GatewayPlugin...
│ │ ├── gateway/ # 内置支付驱动
│ │ ├── module/ # 内置开通模块
│ │ └── helper/ # ThemeTplRenderer 等
│ └── middleware/ # 鉴权、安装检测
├── config/ # 应用配置
├── extend/
│ └── modules/ # 第三方开通模块(cpanel/directadmin/plesk)
├── frontend/
│ ├── admin/ # 后台 Vue SPA
│ └── home/ # 前台 Vue SPA
├── public/
│ ├── plugins/ # ★ 插件根目录(魔方约定)
│ │ ├── addon/
│ │ ├── gateway/
│ │ ├── sms/
│ │ ├── mail/
│ │ └── certification/
│ ├── themes/ # 主题(web/clientarea/cart)
│ ├── index.php # PHP 入口
│ └── router.php # 开发服务器路由
├── resources/
│ └── marketplace/ # ★ 插件市场
│ ├── catalog.json # 官方目录
│ └── packages/ # 发布用 zip(build 脚本生成,非生产离线包)
├── route/ # 全局路由(少量)
├── scripts/ # 开发/构建脚本
└── vendor/ # Composer 依赖插件目录约定
路径:public/plugins/<type>/<name>/
| 文件 | 必须 | 说明 |
|---|---|---|
{CamelName}.php | 是 | 主类,namespace {type}\{name} |
hooks.php | 否 | add_hook() 注册钩子 |
config.php | 否 | 返回默认配置数组 |
示例:public/plugins/addon/login_log/LoginLog.php
命名空间:addon\login_log\LoginLog
开通模块约定
路径:extend/modules/{Name}/{Name}Module.php
命名空间:modules\{Name}\{Name}Module
接口:app\common\module\ModuleInterface
主题目录约定
路径:public/themes/{web|clientarea|cart}/{theme_name}/
- 可得主题:
theme.css或theme.json - 魔方主题:
theme.config+assets/css/*.css - SSR 模板:
*.tpl(见 10-主题与SSR)
数据库表前缀
默认 kd_,安装时可改。插件自建表建议:kd_addon_{插件名}_*。
下一章:04-插件系统