从安知鱼迁回Butterflyの札记
前言
实在抱歉,没有搞清楚状况就直接发了一个停更通知,事情变故有点快,是我没有料及到的,目前更新状态将持续到这个月结束才是停更状态,在这里向大家说声对不起
言归正传,早在一个月前,我就发现了我的博客主题的Bug
,当访客跳转到详情页的时候会直接导致整个网页的图片(不包括顶部图)全部都不加载。另外一个小通病就是只要不是从主页链接点击进来的而是直接顺着文章的链接过来时就会出现背景消失的情况,即时在css中加了!important
样式之后也还是无济于事。最为严重的是就在我发出暂时性通知后和加了看板娘之后,全站图片彻底崩溃消失。于是
!在我Butterfly
的稳定性,即使手上还有安知鱼主题的存档,但我还是想要回去看一下现在的Butterfly
主题现在到底怎么样了。
单开了一个文件夹用来存放博客主题,克隆了Butterfly
的主题仓库,美化之旅也正式开始. . .
魔改须知!!!
- 魔改前需备份博客文件,魔改一时爽,改废火葬场!
- 如果出现问题可以按下键盘上的F12打开浏览器调试工具,查看报错信息,解决问题后再进行下一步操作。当然这招并不是百试百灵,还需要结合Hexo控制台的输出进行结合
- 美化的同时注意一下性能与外观的结合,避免改的页面过于花哨造成卡顿影响阅读体验,避免影响博客的加载速度。
- 没有什么可以说的了,尽情发挥!!!
配置文件速读
这里只选取我修改过觉得比较好的地方,建议是直接将_config.yml文件需要改动的地方复制过来再进行修改,这样由于主配置文件改废了之后还可以对照着主题配置文件进行修改。
_config.butterfly.yml
1 | font: |
_config.yml
(主题文件夹下的)
1 | # CDN Settings |
_config.yml
(博客根目录下的)
1 | # _config.yml |
配置文件修改项
Umami Analytics
1 | # https://umami.is/ |
在Butterfly 5.0
中,主题加入了Umami集成
,你可以在主题中填写Umami的配置,来统计网站的访问量、访客量、页面浏览量。以下是配置项的说明:
enable
: Umami统计的开关,默认false
serverURL
: Umami的主页域名,例如https://xxx.yourdomain.com
website_id
: 你的网站的ID,在Umami的设置
->网站
-> 你的网站旁的编辑
->网站ID
中获取option
: 其他Umami的配置项,暂时没有用到,可以忽略site_uv
: 是否统计网站的独立访客数,默认false
(前提为你配置了token
项,否则会获取失败)site_pv
:是否统计网站的页面浏览量,默认false
(前提为你配置了token
项,否则会获取失败)page_pv
:是否统计网页的访客量,默认false
(前提为你配置了token
项,否则会获取失败)token
:Umami的token。
关于私有部署token
的获取,你可以在Python
中运行这些代码:
1 | import requests |
运行后会得到这么一串json
(这里整理过了):1
2
3
4
5
6
7
8
9
10{
"token": "xxx",
"user": {
"id": "xxx",
"username": "xxx",
"role": "xxx",
"createdAt": "xxx",
"isAdmin": xxx
}
}
token
项后面的值就是我们要的token
了,填进去,就可以看到相应的值,填上去就可以用了。
至于token
的安全问题,据官方所说,这个token
是用来进行调用的,而不是用来存储敏感信息的,所以安全性应该是没有问题的。
基于Umami替代不蒜子
前面的配置文件中umami_analytics
里有这三条配置:
1 | site_uv: false |
如果你配置了Umami
的Token
或API Key
和serverURL
、website_id
这些,又希望替代不蒜子的访客统计,就可以开启这三个选项,开启后会调用你的Umami
,替代不蒜子的统计。可以有效的加快你的博客加载速度,当然这取决于你的Umami的速度。效果如下:
字体的修改
如果你和我一样,觉得原本的字体实在不好看,想要尝试一下霞鹜文楷
这个优雅的字体的话,可以直接跟着我的步骤修改:
在你的配置文件中的
inject
中的head
引入这个(将加号删除就是正常缩进,在此感谢ZSFT(ZeoSeven™ Fonts)
提供的字体CDN):1
2
3inject:
head:
+ - <link rel='stylesheet' href='https://fontsapi.zeoseven.com/292/main/result.css' />将你的配置文件项里的
font
替换为如下格式,global_font_size
和code_font_size
按照自己的需求来调就行:
1 | font: |
生成短链接
在这之前,你需要安装hexo-abbrlink
插件:
1 | npm install hexo-abbrlink --save |
进入到你的博客根目录
下的config.yml
,修改permalink
一项为:
1 | permalink: posts/:abbrlink.html |
然后在你的配置文件_config.butterfly.yml
中配置abbrlink
:
1 | # hexo-abbrlink |
然后直接Hexo一键三连:
1 | hexo cl&&hexo g&&hexo s |
此时abbrlink
会生成一个短链接,这样做的目的就是为了让你的文章链接更短,从而达到优化SEO的目的。
CDN的替换
通过Butterfly
配置文件的注释,我们可以知道Butterfly
的第三方CDN
主要为cdnjs
。但是有一个很容易误导新手的一个地方,staticfile
的CDN
是没有/ajax/libs/
这个的,这就导致了新手只是将其他的镜像域名替换原来的staticfile
就完事了,但是运行一看,博客的UI元素像是被大运创飞了一样,这就很难受了。但是又因为staticfile
的投毒,就
但是,在最后,突然想到:既然是cdnjs的源,是不是可以借鉴一下原来的cdnjs
链接。我们便可以得到以下拆解:
1 | https://cdnjs.cloudflare.com/ajax/libs/aplayer/1.10.1/APlayer.min.js |
刚好,渺软CDN的格式和这个大差不差:
1 | https://cdnjs.onmicrosoft.cn/ajax/libs/aplayer/1.10.1/APlayer.min.js |
因此,我们就可以得到以下配置:
1 | CDN: |
这样我们访问博客时就会快的很多,可以有效的提升网站的加载速度。
博客看板娘
在这里感谢[@红柚不是红袖](https://space.bilibili.com/23499284)提供的小维Live2D模型,原链接如下:
领养一只属于你的小维,支持原作者,三连已奉上!
配置完主题后,感觉到有点空,想着加一个看板娘,需要满足简易,支持隐藏,以及文件自定义模型的要求。果断选择了hexo-oh-my-live2d,很好,很喜欢。
如果想要免费的Live2D模型,其实有个最广,并且最全面的地方——Bilibili,上面有很多画师上传的免费模型的介绍视频,一般在简介或者评论区(置顶)就有下载链接。肥肠好用!
需要注意的是,有些模型明确标注出了不可商用的字样,如果你的博客存在盈利情况的话,就需要找一款可以商用的皮肤了,由于我的博客没有广告等这些盈利项目,所以可以直接用,只需要通知一下画师就好了,这里再次感谢@红柚不是红袖
的小维Live2D模型
,人非常好,发出去消息后等了几个小时就告诉我可以用的,在此感谢!
配置很简单,先安装hexo-oh-my-live2d
插件:
1 | npm install oh-my-live2d |
在[博客根目录]\source
下新建一个文件夹,名为live2d-model-xxx(你的模型英文名)
,先解压你获得的压缩包到一个文件夹,我解压出来的文件是这样的:
1 | 小维正式版 |
也就是
1 | [解压出来的Live2D模型文件夹根目录] |
而我们则需要这些文件:
1 | ├─ xxx.分辨率 |
也就是
1 | ├─ 小维正式版.1024 |
把这些放进我们刚刚创建的live2d-model-xxx
里,然后打开博客根目录下的_config.yml
,在末尾添加以下内容:
1 | # _config.yml |
重点看这三个选项:
path
:模型的路径,这里我们把模型放到了[博客根目录]\source\live2d-model-xxx
文件夹下,所以这里填写live2d-model-xxx/xxx.model3.json
,需要确保你有xxx.model3.json
这个文件。position
:模型在舞台中的位置。 默认值:[0,0]
[横坐标, 纵坐标],你可以将这个理解为模型的偏移值,会有一个限定的透明边框的容器,一旦超出了这个边框,模型就会显示不全,所以需要调整模型的位置。scale
:模型的缩放,区间在0.1~1.0
之间
调好之后进行Hexo三连:
1 | hexo cl&&hexo g&&hexo s |
hexo g
的目的是为了让看板娘都能生成在每个页面上。
在游览器中看一下,芜湖~,可爱捏~
一些我魔改的地方和链接
配置文件
:Butterfly 文档(三) 主题配置页脚
:Butterfly_一图流背景与页脚美化iconfont引入
:Butterfly 文档(六) 进阶教程首页文章滚动
:Swiper Bar首页文章分类
:教程:hexo-magnet 插件 1.0新的标签外挂
:Tag Plugins Plus版权美化
:Butterfly主题博客魔改美化教程总览(一)Live2D看板娘
:在 hexo 中使用
效果
点我查看QwQ
后记
由于换了abbrlink
,博客评论有一些没能迁移过来,呜呜呜. . .