jeklly+github+gitee做个人博客
jeklly+github+gitee做个人博客
方案
- github-pages:初衷最希望是在 github 上用 jeklly 做个个人博客,慢慢累积自己的文章,但是 github 有时很慢,所以转到 gitee。
- gitee-pages:但是不想放弃 github,所以 github 的 pages 首页下链接都指向于 gitee 的 pages,可能这样做不太道德?以后可能考虑同时 push 到两个远程仓库的方案来做同步。
- jekyll-theme:找了一个足够简洁的主题,保留作者链接最页面底部。
- gitalk 评论系统:对比了各种评论系统,gitalk 应该是比较可行的方案了,将 gitalk 用于了 gitee 的评论,但是实际评论是在 github 的 issue。
- 总结:其实 github + jeklly + gitalk 的方案是我的初衷,但是考虑国内访问方便,于是转移到了 gitee,最后没想到绕一下圈还能把 gitalk 也用在 gitee-pages 上。
pages 项目
- github-pages:新建仓库 -> Settings -> GitHub Pages
- gitee-pages:新建仓库 -> 服务 -> Gitee Pages
网上随便搜就有教程,不详细说
jekyll-theme
- jekyll 主题官网挑选,教程对应看作者的文档
- github 在 Settings -> GitHub Pages 下有一个 Theme Chooser 可以选择一个 github 提供的主题,选择比较少
gitalk
说明
- 搜索 jeklly 添加评论的方案时,发现了 gitalk,一开始不知道是什么,还以为能直接用于 gitee 的 pages,瞎折腾了一下。
- gitalk 是用于 github 的,依赖 github 账号,依赖 github 仓库的 issue。
- 刚好我是在 github 和 gitee 都创建了 pages 工程仓库的,所以是不是可以利用 github-pages + gitalk 来做 gitee-pages 的评论区呢?实践证明是可行的。
- 这个方案,评论最终写进的是 github 的 pages 项目的 issue。
- 这个方案,评论需要登录 github 账号,也要写入 github 的 issue,所以有些网络状态下会 load 得慢,或者根本 load 不出来。但是至少放在 gitee 上得文章还是能够稳定访问的。
jeklly 工程添加代码
- 一般情况下,jeklly 会有./_layouts/post.html 作为文章页面的 html 模板,在适当的位置加入以下代码,适当的位置需要对 html 有点了解,知道 post 的大概布局自行确定放在哪里。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!-- ························Gitalk评论系统·························· -->
<div id="gitalk-container"></div>
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.css"
/>
<script src="https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.min.js"></script>
<script>
var gitalk = new Gitalk ({
id: location.pathname, // Ensure uniqueness and length less than 50
clientID: 'your clientID',
clientSecret: ''your clientSecret'',
repo: 'your github repo name',
owner: 'your github name',
admin: 'your github name',
distractionFreeMode: false // Facebook-like distraction free mode
})
gitalk.render('gitalk-container')
</script>
repo:填写 github 上工程名称,不是 url,只需要名称。 owner 和 admin:填写你 github 账号的昵称。 clientID 和 clientSecret 见下文
注册 GitHub Application
GitHub 其中 Homepage URL 和 Authorization callback URL 填写你的 pages 主页 url, 如我的是https://pancake-lee.github.io/pancake-pages 注册完成获得 Client ID 和 Client Secret,填写到./_includes/gitalk.html
This post is licensed under CC BY 4.0 by the author.