00. HOWTO:使用 Localizer 建立多语言网站

本指南的目的是介绍如何设置和配置一个可切换的多语言用户界面的 Drupal 站点,同时说明如何输入和管理多个语言的内容。 本文假设目标站点运行着 Drupal 5.x。

注意本文并没有涵盖 Localizer 模块本身的安装过程,请参阅 Localizer 模块的 README.txt 文件以了解安装须知,同时本站还有一个更详细的安装过程的 HOWTO

原文: http://drupal.org/node/114750

01.准备

  1. 确认你已经有一个工作正常的 Drupal 站点,如果你是全新安装,请建立一些节点,看看是否正常 (此时不要安装 Localizer 模块)。 这个时候你可能希望安装一些与 Localizer 模块兼容的基本模块,例如 Views (注意 Localizer 兼容 Internationalization 模块,即著名的 “i18n”,因此如果你已经安装了该模块,请立刻卸载之)。
  2. 计划你的分类,虽然这个不是必须的,不过预先规划好分类很有好处。
  3. 下载你将要使用的用户界面语言文件,就是那些 .po 文件,通常可以在 http://drupal.org/project/Translations 页面找到,不过一些本地社区站点 (如大陆的 www.drupalchina.org、台湾的 www.drupaltaiwan.org、日本的 www.drupal.jp、意大利的 www.drupalitalia.org 等) 会有一些最新版本的.po 和其他有用的文件,动手之前搜索一番是个不错的主意。
  4. 下载最新版本的 Localizer (此时不安装 Localizer)。

原文: http://drupal.org/node/114751

02.启用必要的核心模块

  1. 以站点管理员身份登陆站点。
  2. 在 Administer > Site building > Modules 页面启用下列核心模块 – 在列表中勾选下列的模块: Locale, Menu, Taxonomy,然后单击 Save configuration 按钮。
  3. 如果你安装了其他兼容的模块 (如 Views),你也可以在此时启用他们。

原文: http://drupal.org/node/114754

03.配置 Localizer

  1. 现在是时候安装 Localizer 了,虽然 Localizer 的安装与其他模块的安装类似,但因为 Drupal 5.x 的核心和可选模块并没有完全根据国际化需求来开发,所以有可能在安装的某个过程要求打一些额外的补丁。 请参考 Localizer 模块附带的 README.txt 文件,同时还有一个 HOWTO 详细说明了安装过程。
  2. 当 Localizer 安装后,到 Administer > Site building > Modules 启用 Localizer 相关的模块(目前可以启用的模块有: LocalizerLocalizer blockLocalizer menuLocalizer nodeLocalizer taxonomyLocalizer userLocalizer views)。
  3. 然后,来到 Administer > Site configuration > Localizer,根据你的站点规划配置 Localizer 参数,如果此时你没打定主意,下面有些建议:

    在 Locale switching block 部分保持默认设置 (如:Hide the current locale(隐藏当前本地化)、Show language name(显示语言名称)、Show flags(显示国旗标志)、国旗和语言分隔符为空格、国旗图标路径就是显示那个、国旗图标大小是 16 x 12)。 在这个示范的设置中,假设一个站点有英语、日语和意大利语等本地化被启用,那么当你以英语来访问这个站点时,Select language 区块 会显示意大利和日本的国旗,国旗后面分别标注着 “Italian” 和 “Japanese”;当你以意大利语访问站点时,则显示英国和日本的国旗以及 “English” 和 “Japanese” 文本;依此类推。

    在 Locale initial detection options 部分启用 Detect through browser's locale(根据浏览器的本地化设置检测要显示的语言),这意味着如果访问者的浏览器上设置的本地化语言在站点中可用的话,站点会自动切换到该语言。 这个特性大多数时候时针对匿名访问者的,因为注册用户可以在用户账户中设置自己的本地化参数。 此外,匿名用户仍然可以通过点击 Select Language 区块 中的语言来切换各种语言。

    在 Locale switching options 部分,保持默认设置 (也就是:Redirect front page to the localized version(重定向首页为本地化版本)、Switch by locale parameter(根据本地化参数切换)、Switch by node's locale(根据节点本地化切换)、Switch by url's locale prefix(根据 URL 的本地化前缀切换)都被启用)。 非常重要一点是禁止 Switch by hostname(按主机名切换) (使用这个特性需要设置 Drupal 为多站点,并需要设置相应的 DNS,另外一点是如果你确实要使用 Switch by hostname,你应该禁止其他选择)。

    此时让 Multilingual support(多语言支持)保持禁止,这是为了让访问者可以同时查看多个语言版本的内容。最好也同时禁止所有的多语言内容区块,因为他们往往会让第一次访问的用户感到很困惑。 不过这些设置都可以在用户账户中自行设置。

    Views 支持可以启用,无论你是否安装了 Views。

原文: http://drupal.org/node/114757

04.添加用户界面语言

  1. 来到 Administer > Site configuration 选择 Localization,看到一个列表,对于一个新安装的 Drupal,此时应该只有 English 被列出来,选择 Add language
  2. 从下拉菜单中,选择你要添加的语言的名称,然后单击 Add language 按钮,每次只能添加一个语言,因此重复前面的步骤添加每个你希望添加的语言。 这个过程其实仅仅是为实际的用户界面翻译建立相应的容器。
  3. 当你设置完所有的语言容器后,单击 Import 链接,浏览到你之前下载的 Drupal 核心 .po 文件,然后指定给正确的语言 (你刚才添加的语言会出现在下拉菜单的顶部),模式选择 Strings in the uploaded file replace existing ones, new ones are added 然后点 Import
  4. 这时可能最好的建议就是验证本地化是否工作正常,单击 Localization 主菜单下的 List 看到新添加的语言,确认启用新的语言并且临时设置为默认语言,当你单击 Save configuration 后,站点的用户界面应该按新的语言显示了。
  5. 重复这些步骤解决所有语言,注意在导入 Drupal 核心以外模块 .po 文件应该在完成了 Drupal 核心 .po 文件导入工作后添加,同时,当你添加这个非核心 .po 文件时,应该选择 Existing strings are kept, only new strings are added 模式。

原文: http://drupal.org/node/114756

05.配置语言选择区块

当 Localizer 设置完成后,来到 Administer > Blocks 并启用 Select language 区块以提供一个语言选择区块给访问者。 当然你要根据自己的需求来进行配置。

如果稍后决定允许匿名访问者启用多语言内容显示,并且相应地你激活了 Localizer 设置中的 Multilingual support,那么也可以配置 Select content languages 区块。

原文: http://drupal.org/node/114910

06.添加和查看多语言内容

  1. 随着设置的完成,站点已经准备好接受多语言内容了。 要测试的话,选择 Create content > Page,注意到输入页面的顶部有一个本地化下拉菜单,为该本地语言添加一些内容然后单击 Submit (出于测试的目的,你可以将这个节点发布到首页以便更容易查看语言切换时的效果)。
  2. 你的内容已经发布了吗?注意到一个叫做 Translations 的菜单项目了吗?单击它将出现一个其他语言的列表。选择 create translation 为其他语言建立一个翻译版本,它会直接取出原来建立的内容,你可以直接对其进行本地化翻译,翻译完单击 Submit (仍然出于测试目的,你可以将它发布到首页以便更容易查看语言切换时的效果)。
  3. 现在有了两个语言的内容,使用语言选择区块来切换这两种语言 (注意: 如果你激活了 Select content languages 区块,那么不要在其中选择任何内容),如果在语言切换的同时,内容相应地改变了,就说明一切正常。
  4. 假设内容被发布到了首页,并且启用了 Select content languages 区块,那么我们也可以测试它,单击 Home,启用所有你建立了内容的语言,然后单击 Change,你会看到所有内容,不管是什么语言的。 尝试禁止某个语言,则相应语言的内容就不显示了。

看!就这样--一个多语言站点正等着添满内容呢!

Bye! Ciao! Sayonara!

原文: http://drupal.org/node/114760