使用PagesCMS+Hugo+GitHub打造免费CMS网站
如何替换WordPress这样的动态CMS网站,上文提到的VS Code + Front Matter CMS + Hugo + GitHub是一个免费方案,但对于普通用户来说,使用VS Code还是有一定难度,无法像WordPress那样全部在网站上操作,因此,这里介绍一个更为简单的和WordPress一样的可视化后台的博客方案:PagesCMS + Hugo + GitHub Pages。
这套方案可以完美替代传统的WordPress系统,具有静态网站高速访问、全自动部署、可视化后台发文的三大特点,没有任何费用,个人用户可以长期零成本使用,个人博客、技术随笔、笔记站点完全够用。
一、架构原理
这套方案使用Pages‑CMS这个免费服务,技术人员可以搭好系统配置,做完初期的配置设置,之后,没有任何技术基础的客户可以使用Github账号登陆Pages‑CMS,然后通过网站的CMS界面发布和管理文章,保存提交之后,Github Actions自动部署发布,网站自动实时更新。
二、搭建流程
1、创建 GitHub 专属网站仓库
登录 GitHub,新建仓库,仓库名为:你的用户名.
,选择 Public 公开仓库,初始化空白仓库。
2、创建 Hugo 网站
本地克隆仓库,新建并初始化一个Hugo站点,同步该仓库。
3、配置 GitHub Actions
访问GitHub仓库,在Settings-Pages-Deployment source 选项选择 GitHub Actions,选择浏览工作流模板,选用Hugo模板,点击 Configure,保存文件,工作流配置就写入仓库,自动部署正式生效。
4、配置 Pages‑CMS 后台
使用GitHub登陆Pages‑CMS网站,选定目标仓库,新建并修改一个配置文件,该文件会被保存在仓库根目录的 .pages.config.yml,适配 Hugo 配置的文件内容如下:
media:
媒体:
input: “assets/images”
output: “/images”
content:
- name: “posts”
label: “博客文章”
type: “collection”
path: “content/posts”
create: true
创建:true
delete: true
删除:true
fields:
领域:
- name: title
- 名称:标题
label: 文章标题
type: string
类型:字符串
- name: date
- 名称:日期
label: 发布日期
type: date
类型:日期
- name: draft
- 名称:草案
label: 草稿状态
type: boolean
类型:布尔值
- name: description
- 名称:描述
label: 文章摘要
type: string
类型:字符串
- name: tags
- 名称:标签
label: 标签
type: list
类型:列表
- name: categories
- 名称:类别
label: 分类
type: list
- name: body
- 名称:主体
label: 正文内容
type: markdown
类型: Markdown
保存好了以后,所有前期的操作配置就完成了。
三、Pages‑CMS后台日常发文
1. 登录后台
前期配置好了以后,后面就可以全在浏览器上进行操作管理了,客户可以打开Pages‑CMS官网:
,使用GitHub账号授权登录,即可进入后台进行管理。
2. 新建/编辑文章
登录之后,选择打开CMS网站的仓库,进入管理面板,就可以管理文章、媒体了,点击“Add an entry”可以发布一篇新文章,旧文章点“Edit”可以编辑,正文内容并非可见即所得的形式,需要自己写Markdown语法,建议现在记事本里写好内容,转为Markdown语法后再粘贴进去。图片拖拽上传,图片自动存入指定目录下。
3. 自动发布更新
点击保存后,Pages‑CMS 会自动提交 Markdown 文件到仓库,触发 GitHub Actions 自动编译部署,等待 1-2 分钟,网站即可更新完成。
结语
这套 Pages‑CMS + Hugo + GitHub Pages 方案,是目前个人免费博客的最优解之一。既解决了传统静态博客“无后台、难维护”的痛点,又规避了 WordPress“付费、卡顿、不安全”的缺陷,实现了免费、好看、高速、易用、免维护的完美博客体验。










