配置 Git-based CMS

Git-based CMS 之流,通过在网页上更新 Git 项目,并使用 OAuth 进行身份认证,实现不需要服务器的内容管理。若要快速入门,GitHub 用户可直接使用 Netlify 提供的 OAuth。

  • 特点
    • 在网页上直接更新内容,不需要客户端编辑器和显式的版本管理。
    • 这类工具大都是 SPA,可直接嵌入现有的框架。
    • 这类工具大都支持内容缓存,不必过于频繁地进行内容更新。
    • 相较于_动态_博客,这类工具不必担心服务器配置、开销等。

Sveltia CMSDecap CMS 较新的变种。前者拥有更现代的 UX 和更多实用功能,前者支持后者大多的配置格式,可直接 drop-in replacement。以下是本网站使用 Hexo 和 Sveltia CMS 的示例:

  • 配置 Sveltia CMS
    • 根据文档,在 source/admin/index.html 添加 CDN。
    • 根据文档,在 source/admin/config.yml 添加 Hexo 的 Front-matters。
  • 配置 Hexo _config.yml
    • 为了避免让 Hexo 渲染 CMS 页面,添加以下项(默认 source/ 的子目录):
1
2
skip_render:
- admin/**
  • 配置 Hexo-Next _config.next.yml
    • 为了在侧栏导航到这个页面,添加以下项:
1
2
menu:
admin: /admin/ || fa fa-lock