Hexo主题Aurora的魔改(一)

本文介绍了如何针对Hexo主题Aurora进行优化,包括替换GitHub源站静态文件和图片链接为自定义CDN,以及解决cdnjs.cloudflare.com访问慢的问题。通过修改主题文件和使用jsdelivr加速,实现了更快的页面加载速度。
摘要由CSDN通过智能技术生成

Hexo主题Aurora的魔改(一)

刚接触Hexo,就碰到了这么好的主题,如图是Aurora作者的博客展示:

你可以从去Github了解HexoAurora主题。

Aurora主题展示

Aurora主题展示

虽然主题很好看,但是对于刚接触Hexo,折腾起来是有点棘手。

安装出现问题,主题修改摸不着头脑,Deploy出现问题。

下面我将从替换源站静态文件和图片文件链接,以及替换cdns.cloudflare.com链接两个方面来介绍我修改的内容,以后可能还有,敬请期待。

替换源站链接

由于github.io在国内的访问速度很慢,而且也不容易被爬虫抓取,所以我果断选择了在自己的服务器上部署hexo发布的静态文件,关于 如何通过宝塔在自己的服务器上部署hexo站点,可以参考 这两位 博主的做法 :

Hexo 部署至云服务器(宝塔面板) - 黑石博客 - Hexo博客 (heson10.com)

用宝塔面板将hexo部署到阿里云 | JSOPY

如果Hexo d时碰到 bash: git-receive-pack: command not found fatal: Could not read from remote repository.这样的问题,可以参考:

bash: git-receive-pack: command not found fatal: Could not read from remote repository._小志的博客-CSDN博客

但是问题又来了,由于我是用的腾讯云的1H2G的香港轻量,资源不够,所以想像wordpress那样弄一个CDN,以及自动替换源站链接为CDN链接,但是搜索了一圈,也没能找到好的方法来自动替换链接,以下是我搜索到的方法,都不太有用,如果有网友实验成功,可以告知以下博主,我也想白嫖。

自动使用jsdelivr CDN 加速hexo的图片等静态资源加载 | 鸿雁自南人自北 (renzibei.com)

使用 jsDelivr 免费加速 GitHub Pages 博客的静态资源 - SegmentFault 思否

使用 jsDelivr 为 Hexo 博客提供高效免费的CDN加速 | 素履独行 (yuanpei.me)

暂时没法,只能一个个去替换使用的链接,

1.替换head里的link

找到路径:Hexo\node_modules\hexo-theme-aurora\layout\index.js

修改head头里面的引用链接,如:

/favicon.ico

/static/css/chunk-libs.eebac533.css

/static/css/app.0d31776f.css

将这些链接修改为你的cdn链接,如jsdelivr

2.其他链接替换

还是上面的index.ejs文件,ctrl+f搜索 i.p="/"

i.p="/" 改为cdn链接 ,如:i.p="https://cdn.jsdelivr.net/gh/MeerOst/meerost.github.io@master/"

这样即可,去游览器f12,可以看到源站链接只有html和json文件了

替换cdns.cloudflare.com链接

由于主题引用了cdnjs.cloudflare.com链接,而这个域名在国内访问慢,ping值高,所以速度并不理想,甚至还会出现一直绕圈的情况。所以需要替换链接,

f12查看,原来是由于引用了clipboard.min.js文件,而这个文件的引用链接并没有出现在主题文件里面,说明是引用的外部文件里面包含了这个clipboard.min.js文件的引用链接,查与clipboard相关的外部文件,发现是prism-copy-to-clipboard.min.js文件,引用了clipboard.min.js文件,现在只需修改prism-copy-to-clipboard.min.js引用链接就可以了。

这里有许多方法,你可以自己琢磨一下,我的方法是,

1.下载clipboard.min.js文件

下载clipboard.min.js文件,并上传到github上,找到其jsdelivr的cdn链接

,如:https://cdn.jsdelivr.net/gh/MeerOst/MeerOstPubilcStatic/ajax/libs/clipboard.js/2.0.0/clipboard.min.js

1.下载prism-copy-to-clipboard.min.js

下载prism-copy-to-clipboard.min.js文件,将https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js链接替换为jsdelivr的cdn链接,最后将prism-copy-to-clipboard.min.js文件上传到github,并找到其jsdelivr的cdn链接,如:https://cdn.jsdelivr.net/gh/MeerOst/MeerOstPubilcStatic/npm/prismjs@1.23.0/plugins/copy-to-clipboard/prism-copy-to-clipboard.min.js

3.替换本地文件链接

找到本地路径:Hexo\\node_modules\hexo-theme-aurora\data\en.yml 打开en.yml文件,或Hexo\\node_modules\hexo-theme-aurora\data\en.ymlcn.yml文件(看你_config.aurora.yml里面的cdn配置使用的是cn还是en)将prism-copy-to-clipboard.min.js文件的引用链接替换为上面的jsdelivr的cdn链接。

Valine评论无法显示问题

  • 如果你在cdn配置为en时,valine会出现无法显示的情况(cn我不知道会不会也有这种情况)
  • 最后查明是Valine.min.js文件报错:不存在,你需要找到
    ​ - Hexo\node_modules\hexo-theme-aurora\data\en.yml
  • 文件,将其中Valine.min.js的引用链接改为
    ​ - https://cdn.jsdelivr.net/
    ​ - npm/valine@1.4.14/dist/
    ​> - Valine.min.js(请自行需要将链接拼接)。

由于我是第一次写博客,难免有些错误和啰嗦,望各位xdm多担待,多指点,谢谢!

阅读原文: Hexo主题Aurora的魔改(一)

Hexo是一个静态博客生成器,它提供了一些默认的主题,但是用户也可以自己开发或使用第三方主题。其中,Next是一款非常受欢迎的Hexo主题之一,它提供了丰富的功能和灵活的配置。 在使用Next主题时,我们可以通过override来修改主题的默认配置和样式。具体来说,override是指将主题的默认配置或样式文件复制到博客根目录下的/source/_data/或/source/css/override/目录下,然后进行修改。这样,在重新生成博客时,Hexo会优先使用override中的配置或样式文件,从而实现自定义主题的效果。 下面是具体的使用方法: 1. 复制配置文件到/source/_data/override/目录下 首先,我们可以通过命令`hexo config`查看当前主题的默认配置,然后将需要修改的配置项复制到/source/_data/override/目录下的同名文件中,并进行修改。例如,如果我们想修改Next主题的默认语言为英文,可以执行以下命令: ``` hexo config | grep language > source/_data/override/next.yml ``` 然后,打开source/_data/override/next.yml文件,将`language`的值修改为`en`,保存文件即可。 2. 复制样式文件到/source/css/override/目录下 如果我们需要修改主题的样式,可以将主题的默认样式文件复制到/source/css/override/目录下,并进行修改。例如,如果我们想修改Next主题的默认字体为微软雅黑,可以执行以下命令: ``` cp -r themes/next/source/css/fonts source/css/override/ ``` 然后,在source/css/override/fonts目录下,将所有字体文件中的字体名称修改为“Microsoft YaHei”,保存文件即可。 需要注意的是,override文件的命名和存放路径需要与主题默认文件一致,否则可能会导致修改无效或出现异常。同时,使用override也可能会导致主题升级时出现冲突,因此在使用时需要注意备份原始文件和谨慎修改
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值