本来一直使用CSDN的博客记录一些本身的东西,可是前段时间登陆发现一直须要我真实身份验证,抱着支持国家政策的态度我屈服了... 可是最近,后来为何又出来一个必须扫描公众号二维码关注再完成手机验证。只想说你推广也就算了为毛还要强制!表示不服!
为了专治“不服”,我决定使用万能Github自行搭建博客,考虑了 Jekyll,看了比人的一堆分析之后最终选择了 Hexo,因为个人web前端只停留在html+css阶段故表示不懂他们底下的大区别,可是使用了之后只以为 hexo很麻烦... 由于jekyll是github自动生成pages,hexo须要本身genegrate+deploy,我不知道这是否是表明我每次上传都必须有nodejs的环境,也不知道jekyll是否是这样...css
最终,我仍是选择了hexo,由于我看用到了 Material 的模板0.0html
安装步骤很简单,一路文档操做:链接
安装 Hexo 至关简单。然而在安装前,您必须检查电脑中是否已安装下列应用程序:前端
Node.js Git
若是您的电脑中已经安装上述必备程序,那么恭喜您!接下来只须要使用 npm 便可完成 Hexo 的安装。node
$ npm install -g hexo-cli
选择一个心仪的文件夹,在这次cmdios
$ hexo init MyBlog #MyBlog是我要放置博客文件的文件夹 $ cd MyBlog $ npm install
完成之后对应的目录git
. ├── _config.yml ├── package.json ├── scaffolds ├── source | ├── _drafts | └── _posts └── themes
安装完成,在themes文件夹中已存在一个模板,因为它不是咱们须要的模板,so把里面的文件删除干净,而后在里面用git或者直接down一份Material 的代码。解压完成。github
先修改主文件夹的 *_config.yml* 文件,具体含义参考配置, 主要的是修改web
language: zh-CN
把语言设置成中文npm
# Extensions ## Plugins: https://hexo.io/plugins/ ## Themes: https://hexo.io/themes/ theme: material
主题设置成materialjson
打开material文件夹
复制一份 *_config.template.yml* 命名成 *_config.yml*
里面的具体参数修改参考这里
照作基本都能成
使用本地搜索须要安装 hexo-generator-search 插件。
在修改的 *_config.yml* 中
把 search: use 的值为 google 改成 local 便可。
而后在原 *_config.yml* 中添加
search: path: search.xml field: all
惟一须要说的就是须要在修改的 *_config.yml* 中仿照about界面添加对应标签
# Sidebar Customize sidebar: pages: tags: #make sure the value corresponds to another one in language file link: "/tags" icon: label divider: false gallery: link: "/gallery" icon: photo divider: false about: link: "/about" icon: person divider: false timeline: link: "/timeline" icon: timeline divider: false links: link: "/links" icon: link divider: false
修改多语言文件 zh_CN.yaml
sidebar:
homepage: "主页"
archive: "归档"
article_num: "文章总数"
about: "关于我"
gallery: "图库"
links: "友情连接"
tags: "标签云" #this object name is mentioned above
timeline: "时间轴"
按照配置与本身心意随意更改,只要你喜欢,改代码也是能够的
咱们添加了添加标签云、照片墙、时间线,同时,在zh_CN.yaml中配置了对应的中文,可是就是不显示
可修改代码 *layout/_partial/sidebar-navigation.ejs* 中的这一段
<% if(theme.sidebar.pages[i].icon){ %> <i class="material-icons sidebar-material-icons"><%= theme.sidebar.pages[i].icon %></i> <% } %> <%= i %> </a> </li> <% if(theme.sidebar.pages[i].divider === true) { %> 把 <%= i %> 替换成 <%= __('sidebar.' + i) %>
同理,主界面有一个分页导航也是如此。
同步到github后,随后收到github的邮件, 说 You are attempting to use a Jekyll theme, "material", which is not supported by GitHub Pages.
这是因为hexo的深坑必须得本身手动发布才有效。
安装 deployer 可解决
具体方法是 https://hexo.io/zh-cn/docs/deployment.html
1,关注主题的Issue
2,博客hexo 博客的神坑及本质缘由 3,度娘 4,谷歌 5,自行分析