Polyglot 1.2.0

Polyglot 的全新版本现已推出。去试试吧!

gem install jekyll-polyglot

此外,还请把 jekyll-polyglot 添加到你的网站的 _config.yml 的 gem 列表中。

本版本主要是为接下来的新特性以及更好的多语言内容管理提供基础准备。此外,本版本还包括了一些新特性:

{% I18n_Headers %}

请把这些标签和你的网站的 url 一同放入你的 includes 文件夹下的 head.html 文件中,以此获得最大化的多语言站点 SEO 。其效果与如下 Liquid 代码等同:

<meta http-equiv="Content-Language" content="{{site.active_lang}}">
<link rel="alternate"
      hreflang="{{site.default_lang}}"
      href="http://yoursite.com{{page.permalink}}" />
{% for lang in site.languages %}
{% if lang == site.default_lang %}
  {% continue %}
{% endif %}
<link rel="alternate"
    hreflang="{{lang}}"
    href="http://yoursite.com/{{lang}}{{page.permalink}}" />
{% endfor %}

同样是要放在你的网页 header 中,但是 Polyglot 的方案更加快捷清晰!若需更多详情,请参照 SEO 页面

Polyglot 版本 1.1.0

Polyglot 现已全面支持 Jekyll 3.0 博客!去试试看吧!

gem 'jekyll-polyglot', '~> 1.1.0'

Polyglot 简介

在经过数月的打磨后,我很骄傲地为大家介绍 Polyglot:为那些需要为其受众提供多语言内容的网站所打造的,一款 Jekyll 的 i18n 插件。

特性

尽管市面上存在其他的 Jekyll 多语言插件,Polyglot 却也有其独特之处。多语言插件,Polyglot 在包揽了那些通常留给 Jekyll 开发者去做的脏活累活(比如为了保持不同语言网站下站点地图保持一致而去折腾 url 的写法)的同时,还为他们提供了高效且简单的 SEO 与内容聚合工具。

创建相对化链接

在过去,一款静态网站/博客的多语言插件必须费心地跟进维护网站上所提供的每种语言的相对链接。开发者很容易犯错,然后外语访客就会一下子掉进还没翻译的内容之中。

Polyglot 自动化地为每种你希望网站所拥有的语言的 url 进行相对化处理。这可以让网站的访客可以在浏览你的网站时一直使用同一种语言的版本。

应变支持

当你没有为多语言内容提供翻译版本时,Jekyll 依然会为该语言的子站点根据已有的内容进行构建。而在你提供了多语言翻译版本的情况下,Jekyll 会根据该内容对该语言的子站点构建对应内容。就是这么简单。

站点地图对所有语言均保持一致,翻译内容与其所处的子站点一一对应。

富文本翻译

一般来讲,富文本内容的多语言翻译很难实现。对一个 Jekyll 网站来说,多语言的短字符串或者某些语言的特定用语很难在显示上保持一致。

但现在却简单如斯:只需在你的 config.yml 文件中,按照如下方式存储字符串:

hello:
  en: Hello!
  es: ¡hola!
  fr: Bonjour!
  de: Guten Tag!

按照如下方式使用 Liquid 模板内容:

{{ site.hello[site.active_lang]}}

会生成如下内容:

你好!

快速,异步,零成本构建

Polyglot 会和构建你的默认语言站点一样构建你的多语言站点。Polyglot 会以最小的成本在各自独立的进程下同时构建你的网站的每种语言的子站点。这意味着,你的网站的构建时间不会因为支持语言的数量而增加。

下载

Polyglot 支持 gem 版本,也可以当作 Jekyll 插件使用。可以使用如下代码安装:

  gem install 'jekyll-polyglot'
  

Hyde 介绍

Hyde 是一款大胆的双栏 Jekyll 主题。其采用了突出的侧边栏和简洁的内容的结合。Hyde 基于 Jekyll 的管家 Poole 构建。

基于 Poole 构建

Poole 是 Jekyll 的管家,是 @mdo 开发的用于提供可靠且高效的 Jekyll 主题开发模板。Poole 以及所有基于它构建的 Jekyll 主题(正如本网站正在使用的 Hyde)均包含如下内容:

  • 完整的 Jekyll 安装所需内容(版式、配置、404RSS feed、文章,以及示例页面)。
  • 对手机显示友好的界面和开发。
  • 使用 CSS 中的 rem 单位轻松可伸缩的文本和组件大小。
  • 支持多种多样的 HTML 标签。
  • 每篇文章下方有相关文章(Jekyll 实现的基于时间的排序)。
  • 语法高亮功能,感谢 Pygments(基于 Python 的代码片段高亮器)

Hyde 的特性

除了 Poole 已有的特性外,Hyde 的特性还包括:

  • 侧边栏支持文本模块和动态生成的导航菜单,包括活动链接的支持。
  • Two orientations for content and sidebar, default (left sidebar) and reverse (right sidebar), available via <body> classes
  • 使用 <body> 选择八种可选配色主题

请阅读文档了解更多。

浏览器支持

Hyde 是一个面向未来的项目。除了最新版本的 Chrome、Safari(移动和桌面版)和 Firefox 之外,它仅与 Internet Explorer 9 及更高版本兼容。

下载

Hyde 代码托管在 GitHub 上,供大家开发。请前往 GitHub 代码库进行下载、汇报问题,以及特性提交。

谢谢使用!

Jekyll 是什么?

Jekyll 是一款静态网站生成器,同时还是一款开源工具,可用于创建适用于各种形式及尺寸的简单却强大的网站。根据Jekyll 的官方项目说明:

Jekyll 是一个简单、具备博客功能的静态网站生成器。Jekyll 接收你的内容,渲染 Markdown 和 Liquid 模板,生成一个完整的静态网站,可以通过Apache、Nginx 或其他 Web 服务器进行提供服务。Jekyll 同时还是 GitHub Pages 背后所采用的引擎,你可以使用它来从你的 GitHub 代码仓库直接托管网站。

它是一款非常有用的工具,我们非常推荐您使用 Hyde 主题部署 Jekyll。

若想了解更多,请查看项目的 GitHub 页面