如何使用i18n为drupal中的站点信息添加多语言功能

时间:2010-06-16 05:28:27

标签: php drupal drupal-6 internationalization multilingual

我想在drupal网站信息中为口号和任务添加多语言功能。

我尝试添加:

$conf['i18n_variables'] = array (
   'site_name',
   'site_slogan',
   'site_mission',
   'site_footer',
   'anonymous'
);

到settings.php,但那不起作用。我正在使用drupal 6.17

2 个答案:

答案 0 :(得分:2)

任何通过t()运行的文本都是可翻译的。

E.g。你主题中的代码:

<title><?php print "my title"; ?></title>

不可翻译,而

<title><?php print t("my title"); ?></title>

通过翻译系统运行。

对于通过t()函数运行的任何字符串,Drupal允许多种覆盖它们的方法。几乎所有Drupal核心接口字符串都通过转换接口运行。任何用户输入数据的例外情况(手动添加的菜单项,网站标语,标题等)。

要覆盖,您可以使用admin(admin&gt;网站构建&gt;本地化)中的现场界面或使用您描述的方法在settings.php中对其进行硬编码。 您应该尝试在完全多语言的网站上避免使用后者。如果您不想仅仅更改一个或两个字符串来启用整个翻译界面,那么该方法仅用于使用。

但是从头开始:你应该确保字符串可以翻译。只有这样才能在每种语言的基础上改变它。

如果除了要转换用户输入字符串的核心-t() - ed字符串之外,还需要i18​​n模块。一个大型模块,但它允许翻译口号和网站标题等内容。

答案 1 :(得分:0)

如果已安装(并启用)Internationalization模块,则site_slogansite_missiong添加到$conf['i18n_variables']应该有效。完成后,您应该能够通过访问站点信息管理页面来设置每种语言的值,并使用您要编辑值的语言设置接口(即编辑值)法语,您应该按照模块手册“http://example.com/?q=fr/admin/settings/site-information”中的说明进入Multilingual Variables

2010/06/21 :增加了国际化要求并链接到手册页。