×

hexo博客换主题--icarus

96
Trity
2015.09.01 09:47* 字数 1322

发现自己写博客的内容越来越多,涉及的方面越来越广了,原先使用的yilia主题的hexo博客,已经无法达到我的需求了。现在急需要分类的导航,所以不得不再次修改主题:icarus。一个强迫症患者,想要自己的博客完美,结果,不断地尝试都无法达到别人网站的样子,真是惭愧。

icarus搭建

我们只需要按着这个github地址来:hexo-theme-icarus,进行搭建即可。

添加评论

这个主题的评论已经集成了,并不需要我们进行手工导入,要求你有多说/disqus的账号,并在跟目录的_config.yml中,删去注释#

# DuoShuo
duoshuo_shortname: 多说设置的名称

修改markdown中的引用

icarus中的mardown使用引用:>的时候,渲染后:变大居中的情况,所以,这里我改成了跟主题yilia一样。我们找到路径为\themes\icarus\source\css\_partial\article.styl,跟对应的主题yilia的路径,找到关键字:blockquote(中文的意思也是引用),然后将对应修改即可。

原来的
blockquote
 font-family: font-serif
 font-size: 1.4em
 margin: line-height 20px
 text-align: center
 footer...
改成:
  blockquote
    background: #ddd
    border-left: 5px solid #ccc
    padding: 15px 20px
    margin-top: 10px
    border-left: 5px solid #657b83
    background: #f6f6f6
    footer...

添加友情链接

我们在主题的_config.yml中已经有设置links的了。只是没有显示出来:
修改主题的_config.yml

# Links 通过links来设置友情链接
links:
  Hexo: http://hexo.io
  foam | 我一直在找寻有你的世界: http://zoufeng.net/
  getNway的博客: http://www.luojiawei.me/
  HCLAB-环宇创意电脑工作室: http://hclab.cn/hclab/index.php/

# Sidebar # 网站右边框
sidebar: right # set to false if you don't want a sidebar
widgets:
- category
- links

发布博客,markdown文件的格式

markdown文件需要添加categories进行归档区分。
相应的为:

title: "java-Map集合-HashMap"
date: 2015-07-28 10:48:16
categories: java
tags: [java,Map,HashMap,Hashtable]
---

其中categories/tags的格式也可以为:

categories/tags:
    - java

具体格式相应属性的设置,直接去hexo提供的文档:
Front-matter,直接查看官方的文档就可以很快地知道个所以然了。

添加站长统计

我们通过站长统计来及时查看我们个人网站的浏览情况。首先,我们需要进行注册:站长统计
以下参考:添加cnzz站长统计

  1. theme_config.yml中的末尾添加以下:(这部很重要,不添加web_id将无法显示出来)
# CNZZ id
cnzz: 这里填入你在站长统计注册后的web_id
  1. 在目录:主题的layout/_partial/添加文件为cnzz.ejs,内容如下:
<% if (theme.cnzz){ %>
Analyse with <script src="http://s23.cnzz.com/z_stat.php?id=<%= theme.cnzz %>&web_id=<%= theme.cnzz %>" language="JavaScript"></script>
<% } %>
  1. 最后进行显示,在路径layout/_partial/footer.ejs里面添加:
...PPOffice</a>.<%- partial('cnzz') %>

再次提醒注意在_config.xml中添加web_id,否则无法显示。当显示出来了,又有一个问题,那就是要填写查看密码了。
查看以下即可:【设置】如何设置查看密码?(此功能只限站长用户)

百度/谷歌验证站点

为什么要验证站点了,因为要搜索引擎进行收录,说白了就是让别人更容易搜索到你的网站,仅此而已。
首先需要到百度/谷歌站长统计中注册,以及验证:
Google网站管理员工具地址
百度站长工具
注册完后,进行输入相应的网站地址,然后选择html验证,将代码加入以下路径layout/_partial/head.ejs:(截取部分)

<head>
  <meta name="baidu-site-verification" content="tqvy7RDErf" />
  <meta name="google-site-verification" content="hjN29-PO_KfE-dgow-7hcz75xJj0qzZ6G2OkXZ3FVd8" />
  <meta charset="utf-8">
  ....

然后发布到github中,再进行验证即可。

发布后无法加载样式

因为默认的路径的为http://uername.com/hexo-theme-icarus而你解析的路径直接为http://uername.com/导致无法加载样式,或者无法显示文章。那么,该如何进行修改呢?
我们需要对路径进行提升,从hexo-theme-icarus/,你可以按着Hexo使用总结中的配置进行修改_config.yml,即可。修改完后,不要着急,我的情况要等好久才回显示正常,真是郁闷。下面是个别的设置:

# 站点的_config.yml
root: /

# theme的_config.yml
 Home: /
  Archives: /archives
  Categories: /categories
  About: /about

后续步骤

就是实现:jamespan's blog的效果了,也就是相关插件的使用吧。我只要看着他提交的结果,不断地完善中,就可以知道改了什么,而且相应要怎么改了。

扩展插件的使用

强大的插件供你使用,插件集合:Hexo Plugins
下面展示一个插件sitemap的使用:hexo优化--向Google提交sitemap
还必须在根目录的_config.yml加入以下配置:

# Extensions 这里配置站点所用主题和插件,暂默认,后面会介绍怎么修改
# Plugins: https://github.com/tommy351/hexo/wiki/Plugins

exclude_generator:
plugins:
- hexo-generator-feed
- hexo-generator-sitemap</pre>

总结

一开始就发现了博客:jamespan's blog,想着一步就可以集成为这样子,那么就很轻松了完成修改博客的主题了。结果发现,途中各种bug,由于想一步登天,很多东西都不懂,除了问题也不知道怎么找,百度/谷歌也解决不到。最后只能一步步地来,从简单的入手。
直接看官方的文档:hexo.io,从中了解各所以然。再从 hexo-theme-icarus的提交commit中,一步步的修改。这样不再有bug,成就感就上来。以后接触一样新的东西,一定要想婴儿学步,一步步来,血的教训,一天时间又没了。

参考资料

Hexo使用总结
百度站长平台如何做网站验证

hexo博客的系列教程:hexo教程

工具
Web note ad 1