Drupal - перенаправление после смены языка - PullRequest
0 голосов
/ 16 февраля 2011

Я хочу перенаправлять пользователей на домашнюю страницу при смене языка на моем сайте Drupal.Это вообще возможно?

Ответы [ 2 ]

1 голос
/ 08 апреля 2011

В 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('');
  }
}
1 голос
/ 16 февраля 2011

Вы должны сохранить в сеансе текущий язык пользователя, затем, если он изменился, перенаправить на первую страницу, а затем установить для этого сеанса измененный язык.В вашем 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.
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...