v0.3.9 · 开发预览版

有得CMS

面向企业网站的 PHP 内容管理系统。采用服务端渲染和纯 PHP 主题,支持多语言、权限、SEO、媒体管理、备份与升级。

  • PHP 8.2 ~ 8.4
  • 无需 Composer
  • 无需构建
  • MySQL · SQLite 双驱动
  • 严格 CSP 后台
命令行安装示例bash
# 1. 传到服务器,站点根目录指向 public/
# 2. 命令行安装(也可以浏览器访问 /install.php 走向导)
php bin/install.php --driver=sqlite \
    --admin-user=admin --admin-pass='ChangeMe123!' \
    --site-name="我的公司"

# 3. 启动本地开发服务器
php -S 127.0.0.1:8000 -t public public/router.php

主要功能

以下功能均已在当前版本中实现。完整说明见功能页面

01

无需前端构建

运行环境不需要 Composer、Node.js 或资源打包工具。Web 根目录指向 public/ 后,由服务器直接执行 PHP 并返回主题资源。

02

MySQL 与 SQLite

生产环境可使用 MySQL 5.7/8.0,本地开发和低并发站点可使用 SQLite。两种数据库共用内容结构和编号迁移。

03

纯 PHP 主题

主题由 public/themes/{slug}/ 下的 PHP 模板和静态资源组成。复制默认主题后即可制作站点模板。

04

字段化单页模板

pages.php 声明页面模板及字段,后台据此生成表单,支持文本、富文本、图片、日期、开关、下拉和重复行。

05

多语言内容

栏目共用一套结构,内容按语言分别保存并通过翻译组关联。默认语言无 URL 前缀,其他语言使用语言前缀。

06

基于能力的权限控制

角色对应能力清单,控制器声明访问所需能力并在服务端统一校验。admin 角色始终保留全部能力。

07

SEO 与 GEO 输出

系统输出 canonical、hreflang、Open Graph、JSON-LD、sitemap、robots、RSS 和 llms.txt。

08

内容修订与恢复

内容支持回收站、修订历史和历史版本恢复,后台写操作同时写入审计日志。

09

命令行维护

bin/cms.php 提供健康检查、版本查看、备份、恢复、迁移、缓存清理和日志清理命令。

10

操作日志与错误追踪

审计日志记录后台写操作的请求 ID、方法、路径和结果,应用错误写入结构化日志。

11

在编辑页面使用媒体

内容编辑页支持选择、上传、拖入和粘贴图片;单张图片回填字段,多张图片插入图集。

目录结构

Web 根目录只指向 public/,配置和运行数据保存在公开目录之外。核心升级不会覆盖站点配置、上传文件和自定义主题。

安装器与升级器都按这组目录边界处理文件。

app/         业务代码:控制器、模型、后台视图、路由、插件
flight/      框架内核,整包升级,不改一行
config/      安装时生成 config.php,在 Web 根之外
public/      唯一的 Web 根目录
  themes/    主题,一个目录就是一套模板
  uploads/   媒体库上传目录
storage/     日志、缓存、备份,同样在 Web 根之外
bin/         安装、迁移、备份、健康检查等命令行工具