Drupal 7 开发内部培训资料, 分头诗人

把站点做成多语言的怎么做啊?!哪个模块?

赞成!
0
否决!

我想把一个站点做成多语言的,至少中文和英文之间可以功换。。要怎么做?!

6 个回答

赞成!
0
否决!

核心模块Locale就可以。如果你要比较加强点,可以安装Transliteration来翻译链接的别名改用拼音。同时安装Internationalization

赞成!
0
否决!

诗人,按你说的用Locale,我实些了部分语言切换功能,可是能翻译的都是系统本身语言,我添加的翻译不过来。比如我添加了一文章。如图这是英文的时候,

这是中文的时候。

这是为什么?!还有就是我要是创建一个新的内容类型选择不区分语言的话就不能在主菜单上显示出来?

赞成!
0
否决!

这个是需要手动翻译的。设置好content type 后,会多了一个translate选项

 

然后添加翻译就行了,系统是不会帮你翻译的。只能手动翻译,一一对应。

赞成!
0
否决!

谢谢诗人。。现在明白咯。。。

赞成!
0
否决!

诗人,后台添加的内容我可以找到翻译按钮,手动去翻译!也就是说能在后台操作的我都可以手动翻译了!可是如果是我自己写的模块呢?比如

function  login_wu_menu() {
  $items['login_wu'] = array(
    'title' => 'login_wu',
    'description' => 'login_wu',
    'page callback' => 'drupal_get_form',// function drupal_get_form(),drupal_get_form()
    'page arguments' => array('login_form'),//drupal_get_form,drupal_get_form('login_wu_form'), login_wu_form , function login_wu_form()
   
    'access arguments' => array('login_wu submit'),// hook_permission()
    'type' => MENU_NORMAL_ITEM,
  );
 
  return $items;
}

我在访问/login_wu页面时显示出我自己定义的表单内容,这个我去哪手动翻译呢?

还有就是假如我在page.tpl.php页面直接print出一个字符串(如‘test’),怎么手动翻译呢?

还有就是如果我在template.php查询出一些信息,输出到node.tpl.php中去了,怎么手动翻译呢?

赞成!
0
否决!

自己写的模块要用t(''),' '里面用英文,然后在后台翻译那里你搜索这英文,就可以找到内置的,接着翻译就行。