给部署在netlify上的hexo博客添加cms内容管理系统
为什么要添加这个“内容管理系统”
- 如果没有添加cms的话,正常写作博客时需要先在本地写好,再通过git push到github,这一过程较为繁琐,通过cms这种方式就可以实现在线形式的编写博客体验。
开始
- 可参考decapcms
项目配置
- 在hexo项目的
source
目录下创建admin
目录,添加以下两个文件:
1 | admin |
index.html
文件内容
1 |
|
config.yml
文件内容
1 | backend: |
- 完成以上文件的创建后,修改项目根目录的
_config.yml
文件,跳过对source/admin
的渲染:
1 | skip_render: admin/** |
netlify配置
打开netlify,点击自己部署的网站,点击
Site configuration
点击
Build & Deploy
点击
Post processing
点击
Snippet Injection section
,Add Snippet
,分别添加以下内容,Script name
随意填写,以下内容填入html
处:Before</head>
1 | <script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script> |
Before</body>
1 | <script> |
- 回到
Site configuration
处,点击Identity
,再点击Enable Identity
启用。 - 启用后点击
Registration
,再点击Invite only
Registration preferences
处设置为Invite only
,这样就只有你邀请的人才能编辑,防止被人恶意修改。这样好像任何人使用GitHub登录都可以修改文章了。External providers
添加GitHub账号,可以启用使用github账户进行登录。- 完成以上步骤后,回到
Identity
处,分别点击Services
,Git Gateway
,Enable Git Gateway
访问
- 完成了以上操作后,在你的博客地址后面加入
/admin
,就可以进入到cms的页面了,通过GitHub账号或者你邀请的email账户进行登录后,即可进行在线的博客文章编写了。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 XinSi,Yes~!
评论