首先,我们使用views创建一个动态的区块,来按照时间先后显示部门的新闻,另外,我们添加了一个自定义的区块,联系我们.这样在接下来我们就会学习到区块的多语言化了.
然后导航到admin/settings/language,看一下有没有添加简体中文,我们在drupal abc中已经实现了这些功能。所以就不再重复。在这里需要配置一点,那就是导航到admin/settings/language/configure,在语言协定中,选择第2项“仅使用路径前缀”,这一点很关键。我们在drupal abc提到的将英语的路径前缀设为”en”,也是必须的。
另外,导航到区块列表页面,启用新增的两个区块,另外启用“语言切换”模块。当我们访问首页时就看到了这些区块,当我们访问页面admin时,这些区块就消失了?怎么回事呢?这个留作作业,大家思考一下。
导航到模块列表页面,也就是admin/build/modules,启用“Content translation”(内容翻译)模块。这个模块启用后,我们导航到node/1页面,点击编辑,没有任何动静。在Drupal的后台,也没有看到新的菜单。该怎么办呢?
导航到“管理>>内容管理>>内容类型”页面,也就是admin/content/types,在这里我们只有两种内容类型,那就是默认的Page,Story。由于node/1是Page类型的,我们先看看Page类型的,点击它的编辑链接,admin/content/node-type/page,点击“流程设定”,在这个字段集下面我们看到了一个“多语言支持”字段,在这里有3个选项:“禁用”、“启用”、“激活,并有翻译”。关于这3项的具体含义,可参看“Drupal专业开发指南”的第18章。我们在这里就不详细介绍了。这里需要记住的是,选中“激活,并有翻译”,并保存设置。对于Story类型,我们做同样的操作。
我们继续访问node/1,在这个页面,我们会看到紧挨着“编辑”链接,有一个“翻译”链接, 点击这个链接。除了上面的说明文字以外,我们看到有一行记录为:“English 空 尚未翻译 添加翻译”。点击这里的“添加翻译”,我们为node/1添加一个翻译。标题和内容都是node/1的,我们把标题和正文中的内容都翻译成英语。
注意,由于我们已开始把汉语设置为了默认语言,所以添加节点翻译时,是将汉语翻译成了英语。如果你一开始就把英语设置为了默认语言,那么你需要把英语翻译成汉语,如果你的节点选用的是默认语言的话。这里需要注意的是“源节点”这个概念。详情可参看第18章中的解释。
点击保存以后,我们就得到了英文版的“About US”,也就是节点:en/node/18,注意这里的“en”就是英语的路径前缀,node/18时这个节点的内部路径。我们还看到在这个页面有一个链接“简体中文”,点击进入对应的中文页面node/1,而在中文节点页面,我们看到了有一个“English”链接。这两个链接是用来进行语言切换的,非常方便。你知道怎么去调这两个链接么?
我们翻译了后台,翻译了节点,但是还有许多地方,比如菜单,区块,分类,views,等等都还没有翻译。