工作中查找和查阅的文档以英文居多,所以便想着也改造一下自己博客。支持多言语的同时,趁便也算是给新的一年开一个头。

hexo 多言语站点改造

方针

这次改造的方针有两个:

  1. 全局多言语(中-英)的支持。
  2. 不同言语之间能够互相切换。

探究

hexo 以及之前用的 NexT 主题虽然有 i18n 的支持,但都是对导航、菜单等偏固定内容的支持,并没有全局支持。

在网上查找相关文章后,大致有如下 3 种解决计划:

序号 计划 优点 缺陷
1 _post 下新建 en 文件夹存放英文文章。 简略明了,无额外改动。 博客主页会展现一切文章。如果需求按言语显示需另外做开发。
2 使用 hexo-generator-i18n 插件。 简略,安装 装备即可使用。 1. 插件较长时刻没有更新.
2. 安装插件后还需求另做开发,如言语切换等。
3 创立两套网站存放不同版本言语。 相对简略,完全独立。 两套网站部分装备和代码有冗余。

考虑到操作和保护(主要还是懒,不想自己再开发),还是决定选用第 3 中计划。

同时在查找资料时发现了 Fluid 主题,感觉很舒服便趁此机会一起晋级。

改造

在新博客的文件夹下,经过 hexo init 分别创立两个言语的博客。目录的结构如下:

.
├── blog-cn
├── blog-en
└── scripts

针对 Fluid 主题和多言语的装备能够参阅:记一次 Hexo 博客搬迁与多言语站点改造。写的非常详细,墨守成规即可。

针对部署部分,参阅:Hexo增加多言语支持「国际化i18n」。将部署流程汇总到了 shell 文件中,阅览起来能够略微轻松一些,也便利部署。

其本质就是在编译后的文件中多了一个 en 文件夹,存放英文内容。因此能够经过 https://{your-blog}/en 来访问。

#!/bin/bash

# Build CN blog
cd blog-cn && pnpm run build

# Build En blog
cd ../blog-en && pnpm run build
cd ../blog-cn
mkdir ./public/en &&mv ../blog-en/public/* ./public/en/
pnpm run deploy

搬迁

hexo 的搬迁一项是最轻松的工作。将 source 下需求的文件复制到新的当地即可。

其他

剩余的就仅仅翻译工作了,看看是否能够借助 Google 翻译或许 GPT 的力量了。

最后欢迎来我更新过的博客游玩。