Skip to content

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.phpadd_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.csstheme.json
  • 魔方主题:theme.config + assets/css/*.css
  • SSR 模板:*.tpl(见 10-主题与SSR

数据库表前缀

默认 kd_,安装时可改。插件自建表建议:kd_addon_{插件名}_*


下一章:04-插件系统

KeDe Finance · 纯 PHP 自研财务系统