利用Jekyll搭建自己的GitHub博客
写在前面
GitHub提供一种功能叫做GitHub Pages,可以利用它来搭建自己博客或者网站(只支持静态站点的搭建)。不仅如此,GitHub还
支持Jekyll解析。所以只要按照Jekyll的规则来建立文件,然后把它push到GitHub上就能搭建出自己的博客。
当然,最方便的方式就是到Jekyll Themesclone别人做好的主题。但如果有一定的前端知识,也可以自己一行一行代码敲出自己独一无二的博客来。下面
主要说的是用Jekyll搭建博客的总体思路。
开始搭建
一、到GitHub官网注册一个账号
二、点击绿色的new repository
按钮新建一个代码仓库,这里假定新建了一个叫做blogDemo
的仓库。
三、把仓库克隆到本地进行编辑
四、创建配置文件
在项目的根目录下创建一个名为_config.yml
的文件,打开输入以下内容:1
baseurl:/blogDemo
五、创建模板文件。
1. 在项目根目录下创建一个_layouts
的目录,用来存放模板文件。
2. 进入该目录,创建一个posts.html
文件,用来作为博客文章的模板文件。并在该文件中输入以下内容。1
2
3
4
5
6
7
8
9
10`<!DOCTYPE html>`
`<html>`
`<head>`
`<meta http-equiv="content-type" content="text/html;` `charset=utf-8" />`
`<title>`{\{page.title}}`</title>`
`</head>`
`<body>`
{\{content}}
`</body>`
`</html>`
Jekyll使用Liquid模板语言,表示文章标题,
写在前面
GitHub提供一种功能叫做GitHub Pages,可以利用它来搭建自己博客或者网站(只支持静态站点的搭建)。不仅如此,GitHub还
支持Jekyll解析。所以只要按照Jekyll的规则来建立文件,然后把它push到GitHub上就能搭建出自己的博客。
当然,最方便的方式就是到Jekyll Themesclone别人做好的主题。但如果有一定的前端知识,也可以自己一行一行代码敲出自己独一无二的博客来。下面
主要说的是用Jekyll搭建博客的总体思路。
开始搭建
一、到GitHub官网注册一个账号
二、点击绿色的new repository
按钮新建一个代码仓库,这里假定新建了一个叫做blogDemo
的仓库。
三、把仓库克隆到本地进行编辑
四、创建配置文件
在项目的根目录下创建一个名为_config.yml
的文件,打开输入以下内容:1
baseurl:/blogDemo
五、创建模板文件。
1. 在项目根目录下创建一个_layouts
的目录,用来存放模板文件。
2. 进入该目录,创建一个posts.html
文件,用来作为博客文章的模板文件。并在该文件中输入以下内容。1
2
3
4
5
6
7
8
9
10`<!DOCTYPE html>`
`<html>`
`<head>`
`<meta http-equiv="content-type" content="text/html;` `charset=utf-8" />`
`<title>`{\{page.title}}`</title>`
`</head>`
`<body>`
{\{content}}
`</body>`
`</html>`
Jekyll使用Liquid模板语言,{{page.title}}表示文章标题,{{content}}表示文章内容。这只是一个比较简单的文章展示页举例,具体要做成什么样式还要自己进一步敲代码完成。
六、创建文章
1. 回到项目根目录,创建一个_posts
目录用于存放博客文章。
2. 进入该目录,创建一篇文章。文章可以是用HTML文件,也可以是markdown文件。但文件名有严格要求必须是年-月-日-标题.后缀名
。比如这里新建一个2017-12-18-Hello-World.md
的文件。
3. 在该文件中填入以下内容。1
2
3
4
5
6
7
layouts: posts
title: Hello-World
<h2>{{ page.title }}</h2>
<p>我的第一篇文章</p>
<p>{{ post.date | date:'%Y-%m-%d' }}</p>
yaml文件头:每篇文章的头部,必须有一个yaml文件头,用来设置一些元数据。它用三根短划线”—“,标记开始和结束,里面每一行设置一种元数据。三根短划线前面,是不能有空格的!需要注意的是,yaml文件头中变量与变量值之间要用空格隔开,如title: Hello-World
冒号后面有空格。
“layout: posts”,表示该文章的模板使用_layouts目录下的posts.html文件;
“title: 你好,世界”,表示该文章的标题是”你好,世界”,如果不设置这个值,默认使用嵌入文件名的标题,即”Hello World”.
在yaml文件头后面,就是文章的正式内容,里面可以使用模板变量。{{ page.title }}就是文件头中设置的”你好,世界”,{{ page.date }}则是嵌入文件名的日期(也可以在文件头重新定义date变量),”| date:’%Y-%m-%d’ “表示将page.date变量输出格式为:年-月-日。
七、创建博客首页
回到根目录,创建一个index.html的文件,输入以下内容。1
2
3
4
5
6
7
8
9
10
11
12---
layout: posts
title: 我的Blog
`---`
`<h2>`{\{ page.title }}`</h2>`
`<p>最新文章</p>`
`<ul>`
`{`% for post in site.posts %}
`<li>`{\{ post.date | date_to_string }}
`<a href="`{\{ site.baseurl }}{\{ post.url }}`">`{\{ post.title }}`</a></li>`
`{`% endfor %}
`</ul>`
它的Yaml文件头表示,首页使用posts模板,标题为”我的Blog”。然后,首页使用了{
% for post in site.posts %},表示对所有帖子进行一个遍历。这里要注意的是,Liquid模板语言规定,输出内容使用两层大括号,单纯的命令使用一层大括号。至于{{site.baseurl}}就是_config.yml中设置的baseurl变量。 首页模板也可以自己在_layouts
中自己定义喜欢的布局,然后再引入进来,这里只是一个简单的举例。
至此,一个简单的博客就搭建完成了。整个项目的目录结构如下:1
2
3
4
5
6
7/blogDemo
|--_config.yml
|--_layouts
| |--posts.html
|--_posts
| |--2017-12-19-HelloWord.html
|--index.html
八、把代码上传到GitHub仓库
1. 上传完文件后,到GitHub官网进入该项目找到settings
这个选项。
2. 往下拉找到GitHub Pages
,把source
选为master branch
3. 稍等一会就通过https://username.github.io/blogDemo,比如我这里是[https://fishrong.github.io/blogDem](https://fishrong.github.io/blogDemo)。当然如果你把博客直接写在了username.github.io这个仓库下就可以直接访问https://username.github.io/。
4.
九、域名解析到博客
1. 在项目根目录下新建一个名为CNAME
的文件,文件内容为你的域名如:1
www.example.com
- 进入域名管理,在域名解析里添加如下两条记录
主机记录:@;记录类型:CNAME;记录值:username.github.io/blogDemo(也就是博客首页地址)。 主机记录:www;记录类型:CNAME;记录值:username.github.io/blogDemo(也就是博客首页地址)。
3. 需要等待一会才能通过域名访问。
参考链接:
Jekyll官方文档
GitHub Pages tutorial
表示文章内容。这只是一个比较简单的文章展示页举例,具体要做成什么样式还要自己进一步敲代码完成。六、创建文章
1. 回到项目根目录,创建一个_posts
目录用于存放博客文章。
2. 进入该目录,创建一篇文章。文章可以是用HTML文件,也可以是markdown文件。但文件名有严格要求必须是年-月-日-标题.后缀名
。比如这里新建一个2017-12-18-Hello-World.md
的文件。
3. 在该文件中填入以下内容。1
2
3
4
5
6
7
layouts: posts
title: Hello-World
<h2>{{ page.title }}</h2>
<p>我的第一篇文章</p>
<p>{{ post.date | date:'%Y-%m-%d' }}</p>
yaml文件头:每篇文章的头部,必须有一个yaml文件头,用来设置一些元数据。它用三根短划线”—“,标记开始和结束,里面每一行设置一种元数据。三根短划线前面,是不能有空格的!需要注意的是,yaml文件头中变量与变量值之间要用空格隔开,如title: Hello-World
冒号后面有空格。
“layout: posts”,表示该文章的模板使用_layouts目录下的posts.html文件;
“title: 你好,世界”,表示该文章的标题是”你好,世界”,如果不设置这个值,默认使用嵌入文件名的标题,即”Hello World”.
在yaml文件头后面,就是文章的正式内容,里面可以使用模板变量。就是文件头中设置的”你好,世界”,则是嵌入文件名的日期(也可以在文件头重新定义date变量),”| date:’%Y-%m-%d’ “表示将page.date变量输出格式为:年-月-日。
七、创建博客首页
回到根目录,创建一个index.html的文件,输入以下内容。1
2
3
4
5
6
7
8
9
10
11
12---
layout: posts
title: 我的Blog
`---`
`<h2>`{\{ page.title }}`</h2>`
`<p>最新文章</p>`
`<ul>`
`{`% for post in site.posts %}
`<li>`{\{ post.date | date_to_string }}
`<a href="`{\{ site.baseurl }}{\{ post.url }}`">`{\{ post.title }}`</a></li>`
`{`% endfor %}
`</ul>`
它的Yaml文件头表示,首页使用posts模板,标题为”我的Blog”。然后,首页使用了{
% for post in site.posts %},表示对所有帖子进行一个遍历。这里要注意的是,Liquid模板语言规定,输出内容使用两层大括号,单纯的命令使用一层大括号。至于就是_config.yml中设置的baseurl变量。 首页模板也可以自己在_layouts
中自己定义喜欢的布局,然后再引入进来,这里只是一个简单的举例。
至此,一个简单的博客就搭建完成了。整个项目的目录结构如下:1
2
3
4
5
6
7/blogDemo
|--_config.yml
|--_layouts
| |--posts.html
|--_posts
| |--2017-12-19-HelloWord.html
|--index.html
八、把代码上传到GitHub仓库
1. 上传完文件后,到GitHub官网进入该项目找到settings
这个选项。
2. 往下拉找到GitHub Pages
,把source
选为master branch
3. 稍等一会就通过https://username.github.io/blogDemo,比如我这里是[https://fishrong.github.io/blogDem](https://fishrong.github.io/blogDemo)。当然如果你把博客直接写在了username.github.io这个仓库下就可以直接访问https://username.github.io/。
4.
九、域名解析到博客
1. 在项目根目录下新建一个名为CNAME
的文件,文件内容为你的域名如:1
www.example.com
- 进入域名管理,在域名解析里添加如下两条记录
主机记录:@;记录类型:CNAME;记录值:username.github.io/blogDemo(也就是博客首页地址)。 主机记录:www;记录类型:CNAME;记录值:username.github.io/blogDemo(也就是博客首页地址)。
3. 需要等待一会才能通过域名访问。
参考链接:
Jekyll官方文档
GitHub Pages tutorial
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 jaytp@qq.com
文章标题:利用Jekyll搭建自己的GitHub博客
本文作者:子非鱼
发布时间:2018-11-04, 11:19:28
最后更新:2018-10-07, 17:20:30
原始链接:https://Wangsr.cn/2018/11/04/2017-2017-12-18-使用Jekyll搭建博客/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。