开发文档

开发文档

YeCha 是一个“少魔法、可读源码”的轻框架。核心目录与约定如下:

  • index.php / admin/index.php:前台与后台唯一入口。
  • core/:核心类库——Db(PDO 封装与表前缀 ye_)、Router(固定路由 → 语言前缀 → 分类/标签 → 归档 → {slug}.html → 插件页)、Front(页面渲染与多语查询)、Plugins(插件引导)、Cache(文件缓存)、MailFeedLang/Poly 等。
  • themes/yecha/views/:主题模板(布局/文章/侧栏/部分视图),支持暗色与响应式。
  • plugins/:插件目录,各自带 plugin.php 清单、页面/后台/功能块与 migrations/(幂等迁移)。
  • install/migrations/:核心升级迁移,ye_migrations 记录执行历史;tools/upgrade.php 触发。

插件开发入门

参考已随系统发布的官方插件「友链·网址导航 → 博客收录圈」:

  • 清单 plugin.php:声明 id/版本/页面 slug/后台函数/功能块/所需表。
  • 数据:插件表通过 Db::t() 自动加前缀;上线/更新用 migrations/YYYYMMDD_*.php,重启生效前由插件引导执行。
  • 前台:注册 pages 即获得独立路由;后台注册 admin_file/admin_fn;侧栏注册 blocks
  • 迁移即代码:把 ye_circle_posts、月度精选、出站点击去重统计等当作可复用的“收录圈能力包”。

约定

  • 内容走 ye_contents,多语言成组走 ye_poly_contents;术语(分类/标签)多语别名在 ye_metas.slug_i18n
  • 阅读量:前台 POST /countye_views(append 日计数),tools/sync-views.php 定期回写 contents.views 并清空明细——计数值准确、可复核。

更多

  • 主题/布局后台可直接调整;详细接口文档将随版本继续在本文档补全。