国际化(i18n)

  1. 语言文件
  2. 模板
  3. 路径

若要让您的网站以不同语言呈现,您可使用国际化(internationalization)功能。请先在 _config.yml 中调整 language 设定,这代表的是预设语言,您也可设定多个语言来调整预设语言的顺位。

language: zh-tw

language: 
- zh-tw
- en

语言文件

语言文件可以使用 YAML 或 JSON 编写,并放在主题文件夹中的 languages 文件夹。您可以在语言文件中使用 printf 格式

模板

在模板中,透过 ___p 辅助函数,即可取得翻译后的字符串,前者用于一般使用;而后者用于复数字符串。例如:

``` yaml en.yml
index:
title: Home
add: Add
video:
zero: No videos
one: One video
other: %d videos


``` js
<%= __('index.title') %>
// Home

<%= _p('index.video', 3) %>
// 3 videos

路径

您可在 front-matter 中指定该页面的语言,也可在 _config.yml 中修改 i18n_dir 设定,让 Hexo 自动侦测。

i18n_dir: :lang

i18n_dir 的预设值是 :lang,也就是说 Hexo 会捕获网址中的第一段以检测语言,举例来说:

/index.html => en
/archives/index.html => en
/zh-tw/index.html => zh-tw

捕获到的字符串唯有在语言文件存在的情况下,才会被当作是语言,因此例二 /archives/index.html 中的 archives 就不被当成是语言。

文章标题:国际化(i18n)

文章字数:315

本文作者:牵猪的仓鼠

发布时间:2017-03-12, 19:35:02

最后更新:2017-03-13, 20:52:21

原始链接:http://s.amlove.cn/2017/03/12/hexo/docs/internationalization/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录

喜欢就点赞,疼爱就打赏