博客优化日志
1.Twikoo评论系统
查看教程
参考文章:Twikoo | 一个简洁、安全、免费的静态网站评论系统
云函数使用Vercel部署,目前评论系统需要科学上网才能使用。
目前已能正常使用,感谢牢饭的域名。
昵称栏输入QQ号后可自动读取头像、昵称、QQ邮箱。
有时间把具体实现过程补上。
2.增加统计图表
查看教程
最后更新时间:2024-12-19
参考文章:使用Charts插件给Butterfly增加统计图表 | Guo Le's Blog
具体实现效果可参照本博客。
安装插件:
1 | npm install hexo-butterfly-charts --save |
将下面配置内容写入主题配置文件_config.butterfly.yml
中,具体内容可根据自身需求修改:
1 | # 统计图表,支持发布文章统计、发布日历、Top标签统计、分类统计、分类雷达。 |
将发布日历添加到 归档 页面
点击查看详情
安装插件后,在/Butterfly/layout/archive.pug
文件中,#archive
下面添加一行#posts-calendar.js-pjax
, 新添加的比上一行多缩进两个空格。
修改后如下:
1 | extends includes/layout.pug |
其他页面,只需md
文件中插入这个标签:
1 | <div id="posts-calendar" class="js-pjax"></div> |
将 发布统计 添加到 归档 页面
点击查看详情
安装插件后,在/Butterfly/layout/archive.pug
文件中,#archive
下面添加一行#posts-chart.js-pjax
, 新添加的比上一行多缩进两个空格。
修改后如下:
1 | extends includes/layout.pug |
其他页面,只需md
文件中插入这个标签:
1 | <div id="posts-chart" class="js-pjax"></div> |
个人感觉不好看,删了。
将 标签统计 插入到 标签 页面
点击查看详情
编辑主题目录/Butterfly/layout/includes/page/tags.pug
文件,在开头添加一行#tags-chart(data-length = "10").js-pjax
,data-length = "10"
表示显示 Top 10 的标签。
修改后如下:
1 | #tags-chart(data-length = "10").js-pjax |
其他页面,只需md
文件中插入这个标签:
1 | <!-- "data-length" = how many tags to show, default 10 --> |
将 分类统计(无标题)和 分类雷达图(无标题) 添加到 分类 页面。
点击查看详情
编辑主题目录/Butterfly/layout/includes/page/categories.pug
文件,在第5行添加#categories-chart.js-pjax
和#categories-radar.js-pjax
。
修改后如下:
1 | .category-lists |
其他页面,只需md
文件中插入这个标签:
分类统计(无标题)
1 | <div id="categories-chart" class="js-pjax"></div> |
分类雷达图(无标题)
1 | <div id="categories-radar" class="js-pjax"></div> |
3.安知鱼波浪
查看教程
最后更新时间:2024-12-21
参考文章:butterfly文章顶部添加波浪效果 | 安知鱼 (anheyu.com)
具体实现效果可参照本博客文章页面。
修改 themes/butterfly/layout/includes/header/index.pug
大概第 33 行左右
1 | if top_img !== false |
+号部分为需要添加的内容,将 + 号替换为空格,注意缩进。
然后在_config.butterfly.yml
的 [inject.head]
或者自定义 css 中 引入以下 css:
1 | /* 波浪css */ |
这里 css 中fill属性
可以控制波浪颜色,建议使其中一个颜色与背景颜色一致。
4.渐变色版权美化
查看教程
参考文章:(二创)Copyright-beautify | Akilarの糖果屋友链部分字体似乎被同步修改为蓝色,很丑...
5.友链样式功能升级
查看教程
参考文章:Friend Link Card Beautify | Akilarの糖果屋
就喜欢这种大开大合的删减!
注意部分模式需要额外添加缩略图,即添加一条名为siteshot
的配置项。
有时间把具体实现过程搬过来,但是我不是很喜欢这个风格,后悔了,还不如直接用外挂标签的网站卡片来的好看。
6.导航栏魔改
查看教程
最后更新时间:2024-12-19
菜单居中
点击查看详情
颜色修改
点击查看详情
custom.css
文件插入如下内容,渐变色导航栏。
1 | /* 导航栏 */ |
这里的 backdrop-filter: var(--backdrop-filter);
是博主前置修改内容,无法照搬,只把颜色修改部分搬过去就OK。
7.加载动画
查看教程
8.引入iconfont彩色图标
查看教程
参考文章:Butterfly进阶教程
9.首页轮播
查看教程
哎,差点意思。
10.hexo-magnet 插件
查看教程
参考文章:分类: 魔改教程 | Fomalhaut🥝](https://zfe.space/post/hexo-magnet.html)
挺可爱的。记得加入黑夜模式适配。
11.主题色修改
查看教程
Butterfly的主题色配置似乎存在bug,直接跑到 var.style
文件狠狠修改变量,简单粗暴。
12.樱花飘落特效
查看教程
最后更新时间:2024-12-19
使用方式
点击查看详情
在对应页面加入<script async src="https://npm.elemecdn.com/tzy-blog/lib/js/other/sakura.js"></script>
。
或者在主题配置文件中全局引入:
1 | inject: |
挺好看的,就是看久了有点烦,全局引入还是算了。
想到了那句歌:
さくら さくら 会いたいよ
いやだ 君に今すぐ会いたいよ
好汀!
单页面引用时与 pjax 产生冲突时的解决方案
点击查看详情
我只在友链界面引入了樱花特效,但是由于我我开启了pjax,导致页面切换时樱花特效会一直保留,虽然我们可以手动刷新来清除,但是这样操作过于丑陋了,下面给出我自己的解决方案。
在source/js目录下新建sakura.js文件,写入如下内容:
1 | function loadSakuraScript() { |
然后在主题配置文件的inject部分引入改脚本即可:
1 | inject: |
该脚本的主要思路就是取消直接通过标签的方式引用特效(所以记得删除对应页面的特效标签,避免重复加载),通过自定义函数来实现,仅在需要启用特效的页面动态加载。在pjax回调中控制樱花特效的加载与清理,如果检测到页面切换,会在切换前清理掉樱花特效。当进入一个新的页面,会检查当前路径是否需要加载樱花特效。因此我们可以直接修改addEventListener()
函数来控制特效具体要加载在哪些界面。
嘻嘻,我真厉害。
13.字体修改
查看教程
修改字体为霞鹜文楷,楷体真的满足了我对文字的一切美好幻想。
14.markdown渲染器升级
查看教程
最后更新时间:2024-12-19
参考文章:【Hexo】选择更高级的Markdown渲染器_hexo-renderer-marked-CSDN博客
卸载自带的渲染器:npm un hexo-renderer-marked --save
下载新的:npm i hexo-renderer-markdown-it --save
在Hexo配置文件中加入以下内容:
1 | markdown: |
额外下载四个markdown-it没有的插件:
1 | npm i markdown-it-checkbox |
在主题配置文件中对Math部分进行相关配置,选择启用mathjax,并自行选择其他个性化调整。
统统加进去,我可以不用,但不能没有(
15.导航栏取消文章标题显示
查看教程
最后更新时间:2024-12-19
我的文章标题都很长,放在导航栏上很丑,还会和其他部件重叠,因此想要关掉。
实现方法也很简单,把themes/butterfly/layout/includes/header/nav.pug
文件中的span.site-name=(page.title || config.title)
修改成span.site-name=(config.title)
。
即取消对文章标题的判断,直接显示博客的标题。
16.引入外挂标签
查看教程
格式汇总:Markdown语法与外挂标签写法汇总 | Fomalhaut🥝
实测hexo-renderer-markdown-it
渲染器可以支持。
Butterfly外挂标签很好看,可惜原生markdown不支持这些花里胡哨的东西,不知道会不会养成坏习惯。
17.标题小风车
查看教程
参考文章:butterfly 重装日记 | 安知鱼 (anheyu.com)
风车风车还是小风车,真没创意。
18.个人卡片渐变色
查看教程
最后更新时间:2024-12-21
参考文章:博客魔改教程总结(一)
在[BlogRoot]\source\css\custom.css
自定义样式的文件中引入如下代码(最后记得在inject
配置项引入该文件):
1 | /* 侧边栏个人信息卡片动态渐变色 */ |