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 的力量了。

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

相关推荐
real_metrix3 个月前
【教程】Hexo 部署到 Github Page 后,自定义域名失效的问题
hexo·github page
Gzzz__3 个月前
百度、谷歌、必应收录个人博客网站
博客·hexo·butterfly
北桥苏4 个月前
Hexo最新实战:(一)Hexo7.0+GitHub Pages博客搭建
github·hexo·github pages
咸鱼运维杂谈5 个月前
hexo 博客插入本地图片时遇到的坑
linux·运维·hexo
xiezhr5 个月前
小伙伴说VuePress太简洁了,还有没有其他博客推荐?
博客·hexo·个人网站
shandianchengzi5 个月前
【BUG】前端|GET _MG_0001.JPG 404 (Not Found),hexo博客搭建过程图片路径正确却找不到图片
前端·bug·hexo·blog
昔人'6 个月前
csdn文章迁移/迁走历程与实践
hexo·csdn·博客迁移
xiejava10186 个月前
通过jsDelivr实现Github的图床CDN加速
github·hexo·cdn
DLLCNX7 个月前
我的自建博客之旅02之Hexo
hexo
PandaMiner7 个月前
Hexo + Github Pages 搭建个人博客详细教程
前端·hexo