博客配置说明
博客配置说明
不要随便升级 hexo 和 主题!!!
不要随便升级 hexo 和 主题!!!
不要随便升级 hexo 和 主题!!!
已安装插件
1 | hexo-asset-image |
源码修改
npm 下载的
hexo-asset-image
,index.js
第 24 行代码替换为:1
var endPos = link.length - 1;
/source/_data/
下新建styles.styl
作为自定义样式:① 更改文章内链接文本样式(蓝色,鼠标放置其上变橙色);② 设置mermaid
图居中,以及最大高度:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16// 添加文章内链接文本样式
.post-body p a {
color: #0593d3;
border-bottom: none;
border-bottom: 1px solid #0593d3;
&:hover {
color: #fc6423;
border-bottom: none;
border-bottom: 1px solid #fc6423;
}
}
// mermaid 图居中,规定最大高度
.mermaid{
text-align: center;
// max-height: 300px;
}修改主题页面布局为圆角。
/source/_data/
下新建variables.styl
作为自定义样式:1
2
3// 修改主题页面布局为圆角
$border-radius-inner = 15px 15px 15px 15px;
$border-radius = 15px;但是
header
顶部仍为直角,需要向/source/_data/styles.styl
添加:1
2
3
4
5
6
7
8
9
10// 主要内容顶部留白 10px
.main-inner {
margin-top: 10px;
}
// 使用 overflow 设置 header 顶部圆角,侧边栏顶部留白 10px
.header-inner {
overflow: hidden;
margin-top: 10px;
}博文置顶。修改
/Blog/themes/next/layout/_partials/post/post-meta.njk
,定位到<div class="post-meta">
,其下插入:1
2
3
4
5
6
7
8{%- if post.top %}
<span class="post-meta-item">
<span class="post-meta-item-icon">
<i class="fas fa-thumbtack"></i>
</span>
<font color="7D26CD">Top</font>
</span>
{%- endif %}DaoVoice 网页通讯。打开
/Blog/themes/next/layout/_partials/head/head.njk
,添加如下代码:1
2
3
4
5
6
7
8
9{% if theme.daovoice %}
<script>
(function(i,s,o,g,r,a,m){i["DaoVoiceObject"]=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;a.charset="utf-8";m.parentNode.insertBefore(a,m)})(window,document,"script",('https:' == document.location.protocol ? 'https:' : 'http:') + "//widget.daovoice.io/widget/0f81ff2f.js","daovoice")
daovoice('init', {
});
daovoice('update');
</script>
{% endif %}APlayer 音乐播放器。进入
/Blog/node_modules/aplayer
,复制文件夹dist
至/Blog/themes/next/source
。新建/themes/next/source/dist/music.js
文件,添加内容:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16const ap = new APlayer({
container: document.getElementById('aplayer'),
fixed: true,
autoplay: false,
audio: [
{
name: "[name]",
artist: '[artist]',
url: '[url]'
cover: '[url]',
}
{
......
}
]
})打开
/Blog/themes/next/layout/_layout.njk
文件,添加如下代码:1
2
3
4<link rel="stylesheet" href="/dist/APlayer.min.css">
<div id="aplayer"></div>
<script type="text/javascript" src="/dist/APlayer.min.js"></script>
<script type="text/javascript" src="/dist/music.js"></script>添加位置位于
<body></body>
之间,<body itemscoop ...>
之后。Valine 评论系统。打开
/Blog/themes/next/scripts/filters/comment/valine.js
,第 27 行替换为:1
${iconText('far fa-comment', 'comments')}
这样在显示评论数的时候,显示的是
Comments
,而不是Valine
。点击头像返回主页。打开
Blog\themes\next\layout\_partials\sidebar\site-overview.njk
,找到如下代码:1
2<img class="site-author-image" itemprop="image" alt="{{ author }}"
src="{{ url_for(theme.avatar.url) }}">修改为:
1
2
3
4<a href='/'>
<img class="site-author-image" itemprop="image" alt="{{ author }}"
src="{{ url_for(theme.avatar.url) }}">
</a>
附录
- 博文配图使用
post_asset_folder:
设置,但是 hexo 渲染时,会将.md
文件渲染为index.html
,把引用的静态资源复制到与index.html
同目录下,因此.md
文件中引用图片不能写成![](./folder/pic.png)
,而应该写为![](./pic.png)
。这是反直觉的,因此使用hexo-asset-image
插件进行路径替换,这样在.md
文件中引用图片就可以写成![](./folder/pic.png)
。 - npm 下载的
hexo-asset-image
未更新,需要将index.js
第 24 行代码替换为var endPos = link.length - 1;