如何搭建 Hexo,以及简单的使用;包括主题的安装和一些定制;最后是相关问题的解决
安装
安装脚手架
npm install -g hexo-cli
初始化项目(网络原因,很大可能性会到安装 theme landscape 时 失败)
hexo init blog
手动安装 theme landscape 方法:
git clone --depth 1 https://github.com/hexojs/hexo-theme-landscape themes/landscape
安装(如果不执行这一步,hexo 就没有 server 命令,generate 时会什么页面也不生成)
cd blog;npm install
使用
- 创建新 blog
hexo new first-blog
- 生成静态页面
hexo generate
- 本地运行
hexo server
首页显示文章摘要和图片
添加图片:在内容上面添加如下代码
1 | <br/> |
添加摘要:简短说明文章的大概内容(这里不支持任何 markdown 语法)
添加显示摘要:<!-- more -->
markdown 语法
1 | *** 是分割线 |
测试删除
1 | 计划表的效果 |
- 计划A
- A计划第一步
- [x]首先XXX
- A计划第一步
- 计划B
- B计划第一步
- [x]首先XXX
- B计划第一步
1 | 插入图片 |
1 | 表格 |
名字 | 性别 | 年龄 |
---|---|---|
张三 | 男 | 18 |
赵淑芬 | 女 | 20 |
1 | :— 代表左对齐 |
名字 | 性别 | 年龄 |
---|---|---|
张三 | 男 | 18 |
赵淑芬 | 女 | 20 |
hexo 标签语法
1 | {% blockquote [author[, source]] [link] [source_link_title] %} |
content 测试标签语法
content
普通引用
普通引用
引用块引用
content 引用块引用
对书上语言的引用
talk is cheap , show me the code
对网络上的引用
有时候,“爱国”,是一个空洞的词语。更多的人是在言语里,在诗歌里”爱国“,他们没有一点点实际行动,甚至充满抱怨
主题
hexo-theme-yilia
git clone --depth 1 https://github.com/litten/hexo-theme-yilia.git themes/yilia
页面显示有问题时需要安装:npm i hexo-generator-json-content --save
hexo-theme-next
git clone --depth 1 https://github.com/iissnan/hexo-theme-next themes/next
Hexo和NexT写作基本操作:NexT技巧
Hexo版本升级和Next主题升级之坑
Hexo-NexT配置超炫网页效果
hexo-theme-snippet
git clone --depth 1 https://github.com/shenliyang/hexo-theme-snippet.git themes/hexo-theme-snippet
hexo-theme-hiero
git clone --depth 1 https://github.com/iTimeTraveler/hexo-theme-hiero.git themes/hiero
hexo-theme-jsimple
git clone --depth 1 https://github.com/tangkunyin/hexo-theme-jsimple themes/jsimple
hexo-theme-BlueLake
git clone --depth 1 https://github.com/chaooo/hexo-theme-BlueLake.git themes/BlueLake
landscape-plus
git clone --depth 1 https://github.com/xiangming/landscape-plus.git themes/landscape-plus
hexo-theme-indigo
git clone --depth 1 https://github.com/yscoder/hexo-theme-indigo.git themes/landscape-plus
配置
标题和 header 文字字体
修改:themes\landscape\source\css\_variables.styl
1 | logo-size = 60px |
修改:themes\landscape\source\css\_partial\header.styl
1 | $nav-link |
footer 文字
修改:themes\landscape\layout\_partial\footer.ejs
i18 文字
修改:themes\landscape\languages\zh-CN.yml
添加 icon
将自己的 favicon.ico 放到 themes/landscape/source
目录下即可
添加 RSS
安装 hexo-generator-feed 插件npm install hexo-generator-feed
修改 _config.yml
,增加如下内容:
1 | feed: |
添加访问统计
使用不蒜子的服务
- 修改:
themes\landscape\layout\_partial\after-footer.ejs
1
2
3
4
5
6<script async src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
partial 下,添加 busuanzi_count.ejs
<span id="busuanzi_container_page_pv">
本文总阅读量<span id="busuanzi_value_page_pv"></span>次
</span>
<% } %> - 修改:
themes\landscape\layout\_partial\article.ejs
1
2<%- partial('post/tag') %>在此之后添加:
<%- partial('busuanzi_count') %> - 修改:
themes\landscape\layout\_partial\footer.ejs
1
2
3
4<!-- busuanzi_count -->
本站总访问量<span id="busuanzi_value_site_pv"></span>次
本站访客数<span id="busuanzi_value_site_uv"></span>人次<br>
<!-- busuanzi_count -->增加文章目录,参考
- 新增:
themes\landscape\layout\_partial\toc.ejs
1
2
3
4
5<% if (post.toc != false) { %>
<div id="toc">
<%- toc(post.content, {list_number: false}) %>
</div>
<% } %> - 添加到页面:
themes\landscape\layout\_partial\article.ejs
1
2
3
4
5
6
7
8
9
10
11
12
13<div class="article-entry" itemprop="articleBody">
<% if (post.excerpt && index){ %>
<%- post.excerpt %>
<% if (theme.excerpt_link){ %>
<p class="article-more-link">
<a href="<%- url_for(post.path) %>#more"><%= theme.excerpt_link %></a>
</p>
<% } %>
<% } else { %>
<%- partial('toc') %>
<%- post.content %>
<% } %>
</div> - 修改目录样式:
themes\landscape\source\css\_partial\article.styl
1
2
3
4
5
6
7
8
9...
#toc
float right
background-color #eee
font-size 0.8em
color color-link
margin 5px
.toc
list-style none添加返回顶部
- 新增 ejs 文件:
themes\landscape\layout\_partial\top.ejs
1
2
3
4<div id="top">
<a href="#">▲</a>
<a href="#footer">▼</a>
</div> - 修改页面:
themes\landscape\layout/_partial/footer.ejs
<%- partial('top') %>
- 添加样式:
themes\landscape\source\css\_partial\footer.styl
,在最后添加如下代码1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17#top
width 30px
height 50px
background rgba(85, 85, 85, 0.3) none repeat scroll 0% 0%
position fixed
bottom 1%
right 3%
text-align center
cursor pointer
a
display block
font-size 18px
line-height 25px
color #FFF
text-decoration none
a:hover
background-color #258FB8
问题
引用显示居中问题
修改样式:themes\landscape\source\css\_partial\article.styl
1 | blockquote |