作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
Drupal核心自带了一个Content translation的模块,能够翻译节点;再加上i18n模块,这是Drupal多语言网站建设里面的一个标准解决方案。在Drupal6里面,这是标准方案,在Drupal7里面,也可以说是一个标准方案。不过在Drupal7里面,出现了另一种选择,这就是Entity translation模块,后者进入了Drupal8的内核,并在Drupal8取代了前者。所以,我们在搭建Drupal7下的多语言网站的时候,有两种选择。我们这里将会选用Entity translation模块和i18n模块做我们我们的解决方案。
Content translation的基本架构图
Entity translation的基本架构图
从上面的两个示意图中可以看出,Content translation是基于节点的,它为每种语言创建一个节点,并且维护不同语言节点之间的对应关系。Entity translation是基于字段的,在同一个节点内,同一字段在不同语言下,分别创建一个版本。