hexo 多语言站点改造

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

目标

这次改造的目标有两个:

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

探索

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

在网上搜索相关文章后,大致有如下 3 种解决方案:

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

考虑到操作和维护(主要还是懒,不想自己再开发),还是决定采用第 3 中方案。

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

改造

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

shell 复制代码
.
├── blog-cn
├── blog-en
└── scripts

针对 Fluid 主题和多语言的配置可以参考:记一次 Hexo 博客迁移与多语言站点改造。写的十分详细,按部就班即可。

针对部署部分,参考:Hexo添加多语言支持「国际化i18n」。将部署流程汇总到了 shell 文件中,阅读起来可以稍微轻松一些,也方便部署。

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

shell 复制代码
#!/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 的力量了。

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

相关推荐
Qres8217 天前
Hexo博客本地配置
前端·博客·hexo
Qres8219 天前
hexo博客上传github page
git·github·hexo
阿莫西林夹馍4 个月前
hexo使用方法
hexo
mediocrep5 个月前
我的Hexo博客搭好了12 - 自动提交URL到搜索引擎(IndexNow + Google Search Console)
hexo·博客搭建·github pages·个人技术博客
mediocrep5 个月前
我的Hexo博客搭好了04 - 备份Hexo博客的源码目录,上传到Gitee仓库
hexo·博客搭建·github pages·个人技术博客
mediocrep5 个月前
我的Hexo博客搭好了10 - 怎么插入图片和视频
hexo·博客搭建·github pages·个人技术博客
竹之却5 个月前
【Hexo】Hexo搭建教程
github·hexo·blog
AwakeFantasy6 个月前
关于fluid打字机问题的解决记录
javascript·博客·hexo·fluid
大饼酥6 个月前
Hexo + Obsidian + Git 搭建个人博客及编辑方案
hexo·个人博客·obsidian·fluid
徐sir(徐慧阳)7 个月前
搭建属于自己的网站HEXO静态页(二)发布网站到gihub
服务器·node.js·github·hexo