多语言

DILATO IT - 迪原高科(北京)

DILATO IT (迪原高科)公司网站是我第一个正式的多语言站点项目,网站实现了中英两个版本网站的同步和切换。这个网站的经验验证了之前对 Drupal 多语言站点的理论知识,同时项目过程中遇到的实现问题,更是让我了解了使用 Drupal 创建多语言站点时的常见问题、注意事项和解决方案。还有在项目过程中接触到的许多与多语言相关的模块 :D

有关使用 Drupal 创建多语言站点的知识可参考《使用 Drupal 创建多语言站点》的教程。

DILATO IT - 迪原高科(北京)

 

菜单与主链接/次链接多语言化

  只使用 Drupal 核心所提供的功能,还不能菜单项的多语言化/翻译。不过使用 i18n 模块包中提供的 Menu translation 模块,可能很好的实现菜单、主链接/次链接的多语言化功能。

  i18n 模块包中的 Menu translation 模块,提供了以下特性:

  • 允许创建菜单时为菜单设置语言项(如中文、英文等等),设置了语言的菜单项只会在与当前使用语言一致时才会显示;
  • 可以为未设置语言项的菜单内容进行多语言化。实现可通过 Drupal 的翻译页面对菜单项进行翻译;

 

创建可翻译的多语言化菜单

 

内容分类: 

站点变量(Variables)多语言化

  上一节我们已经使用 Drupal 核心的 Locale 模块为 Drupal 站点启用了多语言的功能,并且对 Drupal 界面进行了翻译。不过还遗留了一点点小问题,就是 Drupal 的站点标题没有翻译过来。

  Drupal 中的一些文本和配置存储在数据库的variables表中。比如“站点名称”和“站点口号”这样的配置文本,Drupal 核心的 Locale 模块不能实现这些配置变量的多语言化。因此创建一个更彻底的多语言站点,还需要用到 Internationalization(i18n)模块,i18n 模块提供了 Drupal 变量多语言化的功能。

  要实现对 Drupal 变量的多语言化操作,需要知道要翻译的变量的名称,这一步可以通过搜索 Drupal 数据库的 variables 表来实现。

  当你确定要对哪些变量进行多语言化操作时,你只需要按照以下格式,将变量添加到 settings.php 文件中即可。以下添加了 Drupal 站点的一些常见变量:

内容分类: 

为内容创建不同语言的翻译版本

  Drupal 核心提供的 Content translation 模块,为创建多语言的 Drupal 站点提供了内容多语言化的支持,本教程将介绍如何为内容创建不同语言的翻译版本。 

为内容创建不同语言的翻译版本

 

启用内容翻译功能

  1. 访问 管理 > 站点构建 > 模块(admin/build/modules)页面,启用 Content translation 模块,点击“保存”;
  2. 确定想要启用多语言翻译功能的内容类型,如新闻(Story),访问 内容管理 > 内容类型 > Story(admin/content/node-type/story)页面;
  3. 展开“流程设定”选项,将“多语言支持”配置为“启用,与翻译一起”,点击“保存内容类型”;

 

内容分类: 

使用 Drupal 创建多语言站点

  Drupal 核心提供了 Locale 模块用于为 Drupal 站点提供本地化的功能,使用 Locale 模块创建本地化的站点非常实用,并且能够制作较为简单的多语言站点。不过,我们更推荐使用 i18n 模块,通过 Drupal 创建多语言站点。有关 i18n 模块及其它多语言站点相关的模块的使用,将会再本教程中陆续介绍。

  *说明:本文虽然是在D6时代撰写,但大部分内容对于现今版本的Drupal依然适用。

  本教程将介绍以下内容:

内容分类: