跳转至

多语言

切换语言只改站点配置:

language: zh-CN

内置语言:zh-CN(简体)、zh-TW(正體)、zh-HK(繁體)、en / default(English)、 ja(日本語)、de(Deutsch)、es(Español)、ru(Русский)、eo(Esperanto)。

词条分组

组 覆盖
home / notes / about 个人主页与笔记区
category / tag / archive 分类、标签、归档页
unit 计数单位(篇 / 分類 / tags…),跟在数字后面
search / footer 搜索框占位、页脚统计与署名
post 正文字数、上下篇、复制按钮、版权
aria aria-label / title,读屏器与 tooltip
toc 目录树:收起 / 展开 / 打开索引笔记

规则

  • 缺键回退 —— 每种语言只需覆盖自己有的键,其余自动用 default.yml(English)
  • 变量用 %d / %s —— 例如 __('notes.desc', site.posts.length); 带链接的用 <%- __('footer.powered', '<a …>Hexo</a>') %>
  • JS 里的文案 —— 由 layout.ejs 注入到 window.__hybrid.i18n(copy / copied / collapse / expand), js/main.js 读它,取不到时按 <html lang> 回退,所以新增语言不用改 JS
  • 日期 —— Hexo 的 date() 已按 language 设置 moment locale,'LL' 这类本地化格式会自动变成「2026年10月10日」

新增语言

复制 languages/default.yml,改名为 <语言代码>.yml(如 fr.yml),翻译后放在 languages/ 下即可,不需要注册。

首页文案不走 i18n

首页各区块的标题与按钮文案写在站点 source/_data/home.yml(以及各区块 yml 的 title), 不走语言文件。这样首页可以独立于站点语言设定——例如站点 language: zh-CN (笔记区 UI 中文),但首页全英文。

已知不随语言切换的两处

  • source/404.html 是静态页(Hexo 直接拷贝,不走模板引擎),文案保持英文
  • 顶栏菜单的文字写在主题配置 menu 里,属于站点内容,需要哪种语言就写哪种