Drupal:如何以编程方式设置主题语言?

时间:2010-02-14 14:02:36

标签: drupal drupal-6 locale

如何在代码中的某个位置以编程方式更改drupal默认语言(如template.php)? (在某些情况下,我需要覆盖admin设置的默认语言。) 我正在使用drupal 6。

PS:请阅读我自己的答案以获取更多详细信息。如果你可以帮忙解决这个问题

PS:后来我看到了一个我想要的模块。一定要看看它:

Administration Language Drupal模块

3 个答案:

答案 0 :(得分:3)

全球$语言决定语言。因此,如果你改变它,你将改变语言。但这将是一种语言转换,而不仅仅是一个页面。有可能来回切换。但是没有尝试过。

答案 1 :(得分:3)

<强> PS 最后我在template.php中这样做了:

// get the list of availabel languages
$langs = language_list();
// now switch global $language back to 'en'
$vars['language'] = $langs['en'];

它解决了一些问题,但仍然存在一些问题。 因为我在主题函数中这样做,在代码之前一些模块使用了drupal定义的语言,并且它出现了一些问题,如css方向等。

如果有人有更好的解决方案,可以在template.php之上的某个地方执行代码,我会感谢。

答案 2 :(得分:3)

在Drupal 7中,将以下内容粘贴到template.php:

//Get the list of languages
$languages = language_list();

//Overwrite the global language object
global $language;
$language = $languages['en'];

More info here