多语言¶
切换语言只改站点配置:
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里,属于站点内容,需要哪种语言就写哪种