2011-02-16 38 views

回答

1

你应该在用户会话当前语言存储,那么如果它改变,重定向到头版,然后设置这个会话改变语言。
在你的template.php:

/** 
* Override or insert variables into the page templates. 
* 
* @param $vars 
* An array of variables to pass to the theme template. 
* @param $hook 
* The name of the template being rendered ("page" in this case.) 
*/ 
function THEMENAME_preprocess_page(&$vars, $hook) { 
    global $language; 
    $currentlanguage = isset($_SESSION['currentlanguage']) ? $_SESSION['currentlanguage'] : $language->language; 
    if ($language->language != $currentlanguage) { 
    drupal_goto(url().'/'.$language->language); //goto current language version, if you use http://SITEURL/{languagecode} version, otherwise change it to appropriate. 
    } 
} 
+0

我在哪里可以把这个代码,我在哪里设置会话?我对Drupal很新。抱歉是一个新手。 – 2011-02-16 03:08:38

1

在Drupal 6中写的template.php:

function THEMENAME_preprocess_page(&$vars, $hook) { 
    global $language; 
    $previouselanguage = isset($_SESSION['previouselanguage']) ? $_SESSION['previouselanguage'] : $language->language; 
    $_SESSION['previouselanguage'] = $language->language; 
    if ($language->language != $previouselanguage) { 
    drupal_goto(''); 
    } 
}