next主题升级6.0

很久没写Po了。

最近决定写一波查查next下的一些配置,发现next有6.0了。

研究了一下升级日志,改动不多,简单操作即可。

升级步骤

  1. clone next主题的新代码

    1
    $ git clone https://github.com/theme-next/hexo-theme-next themes/next-reloaded

    这边需要注意的是,官方推荐将主题代码下载到themes下的新目录中(比如这边的next-reloaded),这种方式便于当新主题出错时可以随时切换到老主题。

  2. 拷贝next主题中修改的文件至新主题目录中

    之前next目录是直接git clone下来的,所以git status查看一下就好了。

    博主因为只修改了头像和网站icon等图像文件,所以简单拷贝粘贴即可。

  3. next的配置文件themes/next/_config.yml

    文件themes/next/_config.yml中配置了很多的next下的实用功能,例如: rss、 首页菜单、 next内部主题、评论系统、Google Analysis等。这些都需要迁移到新next配置文件中。

    一个比较好的方法就是先git diff themes/next/_config.yml得到自己的配置内容,然后通过diff工具比较next/_config.ymlnext-reload/_config.yml,将diff的内容合并到文件中。

  4. hexo的配置文件切换主题

    hexo静态博客的配置文件./_config.yml中切换主题为新主题目录next-reloaded

    1
    2
    3
    ...
    theme: next-reloaded
    ...

升级完成

通过上面四步,基本上升级完成。

本地运行hexo s查看效果。

如果没问题直接hexo g -d提交发布。

升级发现的问题

主页左上部分的链接从中文变成了英文

Github上相关issue

Github上也有人提出了这个问题,hexo-next在v6.0.3版本调整了配置,zh-Hans改为了zh-CN

修改hexo配置_config.yml即可。

页面LeanCloud访问统计提示’Counter not initialized! See more at console err msg.’

2018年初发现next使用的LeanCloud访客统计插件存在重大安全漏洞,需要手动修复。

参考文章: NexT主题使用的Leancloud访客统计插件存在重大安全漏洞

Ps: 如果在配置- type: leancloud_counter_security_sync后hexo运行出现文件解析错误,了解一下YAML基础语法就行了。

站点🔍无限转圈无弹窗

博主的站点启用了local_search功能,next v5的时候🔍功能确定可用,但是升级后就不行了。

经过调查和翻阅Github找到了解决方式,删除hexo-generator-searchdb模块然后hexo clean并重新运行即可。

hexo-generator-searchdb was forked from hexo-generator-search
This is a bug in early version of the hexo-generator-search and it has been fixed recently

hexo-generator-searchdbhexo-generator-search的一份fork。
早期版本的hexo-generator-search存在bug,近期被修复了导致。


以上是简单的升级记录,后续有问题会继续更新