这个项目能做什么
# Total CMS
一款面向 PHP 8.2+ 的现代扁平文件内容管理系统,所有内容均以 JSON 文件存储在磁盘上,而非数据库中。无需配置 MySQL,无需运行迁移,无需维护插件生态——内容存储在磁盘上,因此可以和你的代码一起进行版本控制、备份和部署。
## 核心功能
- **无需数据库**——所有内容以扁平 JSON 文件存储在磁盘上。只需在环境间复制文件即可完成部署。
- **33 种内置集合类型**——博客、图片、画廊、文件等,同时支持无限自定义架构。
- **Twig 模板引擎**——在原生 Twig 3 基础上提供 89 个自定义过滤器和 49 个函数,实现强大的模板逻辑。
- **网站构建器**——在管理界面中添加页面即可立即上线,无需构建或生成步骤。
- **REST API**——支持无头使用的全 CRUD 操作,支持 API 密钥或 OAuth 2.1 认证。
- **内置 MCP 服务器**——将站点的集合和搜索暴露给 AI 代理(Pro 版本)。
- **自动化**——调度、Webhook 和事件触发处理程序,带任务队列。
- **扩展系统**——基于注册/引导生命周期和能力权限机制。
- **管理界面**——包含 20+ 字段类型的表单构建器、媒体管理和 Passkey 登录支持。
- **CLI(`tcms`)**——从命令行管理集合、架构、对象、导入导出、同步和部署。
- **图像处理**——使用 GD 或 ImageMagick 实时调整大小、添加水印和处理 OKLCH 色彩。
## 系统要求
- PHP 8.2+(支持 8.4)
- Composer 2.0+
- Apache 或 Nginx 并启用 URL 重写
- PHP 扩展:GD 或 ImageMagick、JSON、Fileinfo、OpenSSL
不需要数据库服务器,生产环境也不需要 Node.js 运行时。
## 安装
```bash
composer create-project totalcms/totalcms mysite
cd mysite
```
将 Web 服务器的文档根目录指向 `public/`,然后在浏览器中打开站点。设置向导会处理管理员账户、数据目录和许可证配置。
安装程序还提供**子路径**布局,从 `/tcms/` 提供 Total CMS 服务,同时将 `public/` 留给你自己的前端构建。
## 模板示例
```twig
{% for post in cms.collection.objects('blog') %}
<article>
<h2>{{ post.title }}</h2>
{{ post.content|markdown }}
</article>
{% endfor %}
```
## CLI 命令
```bash
vendor/bin/tcms collection:list
vendor/bin/tcms jumpstart:export backup.json
vendor/bin/tcms cache:clear
vendor/bin/tcms deploy
```
## AI 代理支持
Total CMS 专为与编码代理良好协作而设计:
- **[llms.txt](https://docs.totalcms.co/llms.txt)** 和 **[llms-full.txt](https://docs.totalcms.co/llms-full.txt)**——一次拉取即可获取完整文档
- **Agent skill**——在 `composer install` 时自动安装到 `.claude/skills/`,覆盖集合、架构、CLI 及网站构建器工作流
- **内置 MCP 服务器**——让代理指向在线站点,直接查询其集合和架构(Pro 版本)
## 文档
完整文档请访问 [docs.totalcms.co](https://docs.totalcms.co)。
## 支持
- [文档](https://docs.totalcms.co)
- [邮件支持](mailto:support@totalcms.co)
## 许可证
Total CMS 为商业软件。生产使用需要许可证。详情请参阅 [LICENSE.md](LICENSE.md)。
免费提供 45 天试用,无需信用卡。访问 [totalcms.co](https://totalcms.co) 了解详情。
评论
0 评分人数达到10人后显示
登录后参与讨论。