当按照上一篇jekyll入门教程步骤操作后,你就拥有了一个属于自己的免费Blog。但是界面非常的朴素甚至有时无法满足最基本的写作需求。因此本文将会简单的介绍jekyll模板的挑选和配置过程
模板挑选
jekyll的模板一般会有以下几个集中挑选的地方:
对于模板的挑选原则,博主觉得有以下几个参考点:
- github支持的jekyll插件有限,模板是否需要额外插件支持
- 是否支持disqus(Blog的评论区是一个基础功能)
- 是否支持Google AdSense(写Blog的同时能给自己带来一些额外收入当然也是不错的!2333)
- 配置是否简单(大部分配置是否能在YAML部分完成)
- bug修复和新功能开发的速度是否稳定
按照以上几个原则进行考评后,博主选择了Skinny-Bones。下文也将围绕如何安装配置Skinny-Bones展开。
模板安装
安装过程比较简单,通过git clone
将模板代码下载到本地目录中。运行bundle install
进行依赖包安装(原理类似于python的virtualenv)。然后用bundle exec jekyll serve
就可以查看模板效果了。以下是安装的过程和输出
这里需要特别指出的是,如果简单的通过jekyll serve
命令启动jekyll的话会有如下的报错。如前文所说模板是通过bundle安装独立的依赖包环境的,因此一定需要通过bundle exec jekyll serve
才能够使用到本目录下的依赖环境正常运行
模板基本配置
然后就是模板的配置,配置过程相对简单。比较费时的地方就是为自己的博客挑选头像和文章简介图片(teaser)。博主这里头像用PhotoEditor将照片调整到模板推荐的120x120
大小,文章简介直接在google上搜400x250
然后将图片放置到根目录下的/images/
并进行配置即可。这里需要指出的是,如果不是Github Project Page,那么这里的url
配置需要留空。如果将url
配置成自己Blog在github的地址会给本地调试带来困难。例如还未上传到github上的image将在本地调试的时候无法访问。以下是本博客的配置文件:
下图是基本配置后的博客效果
模板页头导航配置
只进行基本配置博客会显得比较单调。这部分介绍下页头导航栏的配置。具体配置在_data/navigation.yml
中进行。拿本博客的页头导航举例,具体语法如下:
当然光进行这样的配置,仅仅是做到了显示页头导航的作用。如果要使得点击每个页头标签能够跳转到对应分类的博文列表的话,还需要在根目录下建立和category名对应的文件夹,并在文件夹中放置一个index.md
的文件用作于分类导航页的渲染。还是拿本博客举例,可以看到页头上方有:mysql, python, linux, jekyll 四个分类。那么我们就需要在blog的根目录下手工创建四个文件夹mysql
,python
,linux
,jekyll
,并且在这四个文件夹中都创建一个index.md
。这个文件的内容决定了每个分类的首页如何展示。当然最简单快速的方法是把根目录下的index.md
copy过来稍作修改。同时把permalink配置删掉,再把 site.posts
改成site.categories.mysql
这里mysql
替换为对应分类的名字即可。修改后的结果如下图:
其他配置
本文只是介绍的最基础的模板和安装配置过程。mmistake大神出品的模板界面风格迥异,但是配置却基本相同。详细可以参见他的配置文档。 而其他jekyll模板本文虽然没有涉及介绍,他们的基本安装和配置思路是基本一致的,即:下载解压,覆盖原Blog目录,基本配置,上传到github。
由于skinny bones支持的功能非常多,博客后续也还会针对各个常用功能做详细介绍。其他常用功能例如:
当然读者也可以自己探索模板的具体配置方式,mmistake也提供了官方配置文档,同时也提供了在线样例。如果读者觉得在线样例中的example page非常漂亮想要搬到自己Blog中来的话,也可以通过github的gh-page branch来查看的具体markdown源文件的写法。