【Hexo博客折腾】BlueLake博客主题的详细配置
开始之前
BlueLake主题写了有一段时间了,经常会有朋友发消息给我问一些配置的问题,这篇博文主要也是为了解决这些问题。主题以简洁轻量自居(实则简陋),去掉了Jquery和Fancybox,用原生JS实现站内搜索功能。这个主题只是一个小小的雏形,期待您来帮助它成长。
在阅读本文之前,假定您已经成功安装了Hexo,并使用 Hexo 提供的命令创建了一个静态博客。Hexo是一个快速、简洁且高效的博客框架。Hexo基于Node.js ,使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
需要特别注意的是Hexo有两个
_config.yml
配置文件,一份位于站点根目录下,主要包含 Hexo 站点本身的配置,下文中会称为根_config.yml
;另一份位于主题目录下(themes/主题名/_config.yml),这份配置由主题作者提供,主要用于配置主题相关的选项,下文中会称为主题_config.yml
。
1. 安装
您可以直接到BlueLake发布页下载,然后解压拷贝到themes
目录下,修改配置即可。
不过我还是推荐使用GIT
来checkout代码,之后也可以通过git pull
来快速更新。
1.1 安装主题
在根目录下打开终端窗口:
1 | $ git clone https://github.com/chaooo/hexo-theme-BlueLake.git themes/BlueLake |
1.2 安装主题渲染器
BlueLake是基于jade
和stylus
写的,所以需要安装hexo-renderer-jade
和hexo-renderer-stylus
来渲染。
1 | $ npm install hexo-renderer-jade@0.3.0 --save |
1.3 启用主题
打开根_config.yml
配置文件,找到theme字段,将其值改为BlueLake
(先确认主题文件夹名称是否为BlueLake)。
1 | theme: BlueLake |
1.4 验证
首先启动 Hexo 本地站点,并开启调试模式:
1 | $ hexo s --debug |
在服务启动的过程,注意观察命令行输出是否有任何异常信息,如果你碰到问题,这些信息将帮助他人更好的定位错误。 当命令行输出中提示出:INFO Hexo is running at http://0.0.0.0:4000/. Press Ctrl+C to stop.
此时即可使用浏览器访问 http://localhost:4000
,检查站点是否正确运行。
1.5 更新主题
今后若主题添加了新功能正是您需要的,您可以直接git pull
来更新主题。
1 | cd themes/BlueLake |
2. 配置
2.1 配置网站头部显示文字
打开根_config.yml
,找到:
1 | title: |
title
和subtitle
分别是网站主标题和副标题,会显示在网站头部;description
在网站界面不会显示,内容会加入网站源码的meta
标签中,主要用于SEO;author
就填写网站所有者的名字,会在网站底部的Copyright
处有所显示。
2.2 设置语言
该主题目前有七种语言:简体中文(zh-CN),繁体中文(zh-TW),英语(en),法语(fr-FR),德语(de-DE),韩语 (ko),西班牙语(es-ES);例如选用简体中文,在根_config.yml
配置如下:
1 | language: zh-CN |
2.3 设置菜单
打开主题_config.yml
,找到:
1 | menu: |
主题默认是展示四个菜单,即主页home
,归档archive
,关于about
,订阅RSS
;about需要手动添加,RSS需要安装插件,若您并不需要,可以直接注释掉。
每个页面底部的footer
中联系博主
的三个图标分别是邮箱
,微博主页链接地址
,GitHUb个人页链接地址
,直接使用主题_config.yml
中about页面
的配置,若不需要about页面,只需要如下配置就好:
1 | # About page |
2.3.1 添加about页
此主题默认page页面是关于我页面的布局,在根目录下打开命令行窗口,生成一个关于我页面:
1 | $ hexo new page 'about' |
打开主题_config.yml
,补全关于我页面的详细信息:
1 | # About page |
当然您也可以自定义重新布局about页面,只需要修改layout/page.jade
模板就好。
2.3.2 安装 RSS(订阅) 和 sitemap(网站地图) 插件
在根目录下打开命令行窗口:
1 | $ npm install hexo-generator-feed --save |
添加主题_config.yml
配置:
1 | Plugins: |
2.4 添加本地搜索
默认本地搜索是用原生JS写的,但还需要HEXO插件创建的JSON数据文件配合。安装插件hexo-generator-json-content来创建JSON数据文件:
1 | $ npm install hexo-generator-json-content@2.2.0 --save |
然后在根_config.yml
添加配置:
1 | jsonContent: |
最后在主题_config.yml
添加配置:
1 | local_search: true |
2.5 修改站点图标
站点图标存放在主题的Source
目录下,已经默认为您准备了两张图片。您也可以自己设计站点LOGO。
您需要准备一张ico格式并命名为** favicon.ico ,请将其放入hexo目录的source
文件夹,建议大小:32px X 32px。
您需要为苹果设备添加网站徽标,请命名为 apple-touch-icon.png **的图像放入hexo目录的“source”文件夹中,建议大小为:114px X 114px。
(有很多网站都可以在线生成ico格式的图片。)
2.6 添加站点关键字
请在hexo目录的根_config.yml
中添加keywords字段,如:
1 | # Site |
2.7 首页添加文章置顶
在根目录下打开命令行窗口安装:
1 | $ npm uninstall hexo-generator-index --save |
然后在需要置顶的文章的Front-matter中加上top: true即可。
1 | --- |
2.8 更换主题背景和添加文章版权信息
更换主题背景为深色
1 | # Theme tone |
添加文章版权信息
1 | # Theme tone |
2.9 其他配置
主题_config.yml
的其他配置
show_category_count
——是否显示分类下的文章数。widgets_on_small_screens
——是否在小屏显示侧边栏,若true
,则侧边栏挂件将显示在底部。主题_config.ymlthemes/BlueLake/_config.yml 1
2show_category_count: true
widgets_on_small_screens: true
3.集成第三方服务
3.1 添加评论
目前主题集成六种第三方评论,分别是多说评论、Disqus评论、来必力评论、友言评论、网易云跟帖评论、畅言评论、基于Github Issue的GITALK,推荐gitalk。
需要 GitHub Application,如果没有点击这里申请。
- Application name: 应用名称,随意
- Homepage URL: 网站URL,对应自己博客地址
- Application description :描述,随意
- Authorization callback URL:# 网站URL,博客地址就好
- 点击注册,页面会出现其中Client ID和Client Secret在后面的配置中需要用到
配置
主题_config.yml
:主题_config.ymlthemes/BlueLake/_config.yml 1
2
3
4
5
6
7
8
9
10
11#Cmments
comment:
gitalk:
enable: true ## 开启gitalk
owner: ## GitHub的用户名
repo: ## 此评论存放的GitHub仓库
client_id: ## 复制刚才生成的clientID,例如. 75752dafe7907a897619
client_secret: ## 复制刚才生成的clientSecret,例如. ec2fb9054972c891289640354993b662f4cccc50
admin: ## Github的用户名
language: zh-CN ## Language
pagerDirection: last # Comment sorting direction, available values are last and first.
3.2 百度统计
- 登录百度统计,定位到站点的代码获取页面。
- 复制
//hm.baidu.com/hm.js?
后面那串统计脚本id(假设为:8006843039519956000) - 配置
主题_config.yml
:主题_config.ymlthemes/BlueLake/_config.yml 1
baidu_analytics: 8006843039519956000
注意:
baidu_analytics
不是你的百度id
或者百度统计id
如若使用谷歌统计,配置方法与百度统计类似。
3.3 卜算子阅读次数统计
1 | busuanzi: true |
若设置为true
将计算文章的阅读量(Hits),并显示在文章标题下的小手图标
旁。
3.4 微博秀
微博秀挂件的代码放在layout/_widget/weibo.jade
下,需要您去微博开放平台获取您自己的微博秀代码来替换。
- 登录微博开放平台,选择微博秀。
- 为了与主题风格统一,作如下配置
- 基础设置:高
400px
;勾选宽度自适应;颜色选择白色
; - 样式设置:主字色
#333
;链接色#40759b
;鼠标悬停色#f7f8f8
; - 模块设置:去掉
标题
、边框
、粉丝
的勾选框,只留微博
。
- 基础设置:高
- 复制代码里
src=""
里引号包裹的内容,替换到layout/_widget/weibo.jade
这只是为了和主题的风格统一,当然您也可以自由随意发挥。weibo.jadelayout/_widget/weibo.jade 1
2
3
4.widget
.widget-title
i(class='fa fa-weibo')= ' ' + __('新浪微博')
iframe(width="100%",height="400",class="share_self",frameborder="0",scrolling="no",src="http://widget.weibo.com/weiboshow/index.php?language=&width=0&height=400&fansRow=2&ptype=1&speed=0&skin=5&isTitle=0&noborder=0&isWeibo=1&isFans=0&uid=1700139362&verifier=85be6061&colors=d6f3f7,ffffff,333,40759b,f7f8f8&dpc=1")注意:最主要是是要把
src
里uid=
和verifier=
后面的字段替换为您自己代码里的就好。
原文作者: 郑超(Charles·Zheng)
原文链接: http://chaooo.github.io/article/20161229.html
版权声明: 转载请注明出处