Hexo 常用插件和 Bug 汇总(持续更新中)
只针对 Bitterfly 主题
常用插件
2020.8.16更新
这是取消备用站点、取消PWA等功能之后的,目前很简约的 package.json
:
1 | { |
主题渲染插件
1 | npm install hexo-renderer-pug hexo-renderer-stylus --save |
Git 推送插件
1 | npm install hexo-deployer-git --save |
音乐播放器插件
1 | npm install hexo-tag-aplayer --save |
哔哩哔哩追番页面生成插件
1 | npm install hexo-bilibili-bangumi --save |
RSS生成插件
1 | npm install hexo-generator-feed --save |
文章置顶插件
1 | npm install hexo-generator-index-pin-top --save |
本地搜索插件
1 | npm install hexo-generator-search --save |
字数统计插件
1 | npm install hexo-wordcount --save |
永久链接生成插件
1 | npm install hexo-abbrlink --save |
百度Sitemap生成插件
1 | npm install hexo-generator-baidu-sitemap@0.1.4 --save |
百度主动推送插件
1 | npm install hexo-baidu-url-submit --save |
SiteMap生成插件
1 | npm install hexo-generator-sitemap --save |
Gulp 压缩插件
慎重使用,可能会导致 CSS 样式丢失,使用方法请参考:博客开启 Gulp 压缩
1 | npm install gulp-cli --global |
gulp-imagemin
这个插件比较特殊,慎重使用
1 | npm install gulp-imagemin --save-dev |
常见报错
node 警告
应该来说是正常的,由于包版本和系统兼容性问题导致的,只要不影响功能,即可忽视。
网页公告栏不显示内容
昨天修改了公告栏,加上了小程序和公众号二维码,但是突然公告栏内容消失,检查了好多次都不知道错误在哪,然后就把之前备份的配置文件拿出来对比,发现了错误所在:
原来是这里缺少了一个缩进(图中已修复)
尽管这是个再微不足道的错误,但是却提醒了我,配置文件是非常严谨的,即使少一个空格也可能导致报错。
PWA 报错图标路径找不到
图标路径不对,检查图标路径,务必要让 manifest.json
文件和配置文件中的 PWA 访问到。
中间最长的哪一行是因为图标格式不合格,检查图标尺寸。
PWA 报错安全服务重复
如果控制台报错这个,说明你的 PWA 配置多余,就是可能 offline 和 PWA 同时开启,建议注释掉 offline 的配置并卸载 hexo-offline 插件。
文章的TOC无法点击
目前 Butterfly 3.0 没有适配 Hexo 5.0 ,会导致文章的中文标题无法识别,所以导致标题列表无法点击,有两个方法可以解决:
- 回退版本:
npm install hexo@4.2.1
即可 - 群里大佬提供的方法:
修改 main.js
即可
hexo d到gitee时报错
报错信息翻译:
根据提示执行 git prune
会报错不是一个Git仓库,究其原因,是因为 hexo d
的机制,是把 pubilc
下的所有文件复制到 .deploy_git
文件夹下,再进行推送,所以整个博客目录在不执行 hexo d
时并不是一个Git仓库,所以这就无法解决这个问题,但是推送到github和coding时正常,这就很奇怪,我找不到原因,得不出解决方法,如果有大佬知道,请留言,感激不尽。
2020.8.8更新,已解决,在执行
hexo d
之前cd
进入.deploy_git
文件夹内,执行git prune
即可
2020.8.11更新,上面的那种方法治标不治本,后来又开始反复,今天我发现了另一种方法,就是把gitee的推送地址放到最下面就可以解决了,,,这可能是gitee机制和GitHub不一样的原因吧
更新主题报错
只要和这个报错信息相似的,请检查你的配置文件是否迁移完全,各项新的配置格式是否正确,我这次报错就因为少了一个空格,让我好找,找不同实在是太费眼睛了。
hexo d到github报错请求出错
报错信息:
应该是git凭证失效,更新凭证即可,下载地址:git for Windows
文章设置更新日期不生效
很多时候因为意外导致文章的最后修改时期变化,从而引发文章更新日期的变化,如果我们不需要这种变化,就要手动设置更新日期,但是我突然发现,设置 update
并不生效,这是怎么回事呢?
经过群里大佬的提醒,我才发现我单词拼错了,更新日期应该是 updated