2 язычее под 7

Главные вкладки

Аватар пользователя Kvark Kvark 8 марта 2011 в 14:25

Народ! Несерчайте может я тут прописные истины спрашиваю, но ненахожу на русском доходчиво как сделать чтобы 2 языка работали? Поставил n18, включил чтоб давало создавать контент для двух языков и далбше все ни пру ни му ни кукареку Sad
Перекючалка языка почемуто не в одной зоне не отображаеться, нет ее и все Sad
интиитивно подозреваю что сайт на английском (дефалт) должен открываться по хомлинку и хомлинк/en a руская версия хомлинк/ru но как этого добиться? кто может поделиться дохочивым мануалом а?

Комментарии

Аватар пользователя msidiagnos01 msidiagnos01 8 марта 2011 в 17:21

У тебя выставлено в настройках языка "Определение языка"?

В шестерке это выглядело так

Ничего.
Префикс пути.
Префикс пути с определением языка.
Доменное имя.

Нет. Используется язык по умолчанию, однако пользователи могут (по желанию) выбрать предпочтительный язык на странице Мой профиль. (Выбор языка пользователя будет учитываться в письмах e-mail).
Префикс пути. Язык представления определяется по пути с кодом языка или другой строке, совпадающей с префиксом пути, указанного для каждого языка. Если подходящий префикс не определён, то используется язык по умолчанию. Например: «example.com/de/contact» устанавливает немецкий язык, основываясь на «de» внутри пути.
Префикс пути с определением языка. Язык представления определяется по пути с кодом языка или другой строке, совпадающей с префиксом пути, указанного для каждого языка. Если подходящий префикс не определён, язык определяется языковыми настройками со страницы Мой профиль или языковыми настройками браузера. Если язык не может быть определён, то используется язык по умолчанию.
Доменное имя. Язык представления определяется по домену, использованному для доступа к сайту, сравнивая его с доменом, указанным для каждого языка. Если совпадений нет, то используется язык по умолчанию. Пример: «http://ru.example.com/contact» устанавливает русский язык, основываясь на использовании домена «http://ru.example.com».

Аватар пользователя Kvark Kvark 8 марта 2011 в 17:27

Идею понял, но не пойму где косяк
есть контент на английском - УРЛ = home, есть контент на руском - УРЛ = home
но http://www.eurovisa.lt/home грузиться со всеми меню а http://www.eurovisa.lt/ru/home нет Sad и никак не найду как переключить язык - не показывает мне ланг свичер - хотя все включено Sad может с этим связано?

Аватар пользователя Kvark Kvark 8 марта 2011 в 18:14

упд: http://www.eurovisa.lt/node/29 а вот так грузиться, явно что то где то не довключилось?

И может кто популярно может объяснить как по факту происходит переключение языка на 7? Что за геморой блин Sad

Аватар пользователя Kvark Kvark 8 марта 2011 в 19:02

да включена, - контент типы > базовые страницы > отображение > поддержка языков - включена, с переводом (перевожу условно так как морда админки английская но помойму правильно)

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

Аватар пользователя msidiagnos01 msidiagnos01 8 марта 2011 в 19:02

Блок "Переключатель языка"

Этот блок отображается только когда включены хотя бы два языка и согласование языков установлено в отличное от Нет значение.

Мультиязычные настройки
Язык:
Все языки (логично выставить это значение)
Английский
Русский

Это из блока переключения языка в 6-ке.

Аватар пользователя msidiagnos01 msidiagnos01 8 марта 2011 в 19:06

Этот снипет выводит свичер в любое место, можешь проверить на нем. Учти, это для 6-ки, как в 7-м не могу сказать, хотя наверное подойдет.

<?php

  

// this is copy&paste from locale_block in locale.module
  
$languages language_list('enabled');
  
$links = array();
  foreach (
$languages[1] as $language) {
    if (
$language->language != $current) {
      
$links[$language->language] = array(
        
'href'       => $_GET['q'],
        
'title'      => $language->native,
        
'language'   => $language,
        
'attributes' => array('class' => 'language-link'),
      );
    }
  }

  

// this adds the real paths, i.e. if we are on a german page,
  // the british flag will point to en/english_alias instead of 
  // en/node_with_german_content
  
translation_translation_link_alter($links$_GET['q']);

  

// This one adds extended languages, i.e. those that are not enabled.
  // Disable if you want only flags for enabled languages.
  
i18n_translation_link_alter($links$_GET['q']);
  
  
// now add or replace text links by flags, according to your i18n settings.
  
if (function_exists('languageicons_translation_link_alter'))
    
languageicons_translation_link_alter($links$_GET['q']);  

  

// Or do your own stuff, e.g. set the flags and no lang names,
  // no matter what the i18n icon settings say.
  //if ($icon = theme('languageicons_icon', $language, NULL)) {
  //   $links[$language->language]['title'] = theme('languageicons_place', $link['title'], $icon);
  //   $links[$language->language]['html'] = TRUE;           
  //}

  // remove the current language again. We cannot do that
  // earlier because i18n_translation_link_alter would add it
  // again, thinking it was an extendeg language because it
  // was not yet contained in $links. If you don't use 
  // i18n_translation_link_alter, you can also make a case distinction
  // in the foreach loop
  

$current i18n_get_lang();
  
//unset($links[$current]);

  // format as you like, e.g.
  

echo theme('links'$links, array());
?>
Аватар пользователя msidiagnos01 msidiagnos01 8 марта 2011 в 19:09

"Kvark" wrote:
согласование языков?

Это трудности перевода 6-ки=))

Под согласованием языков понимается

Home » Administer » Site configuration » Languages » Configure
Language negotiation

Главная » Администрирование » Настройка сайта » Языки » Настроить
Определение языка

То, что я приводил в первом посте.

Аватар пользователя Shi3A Shi3A 9 марта 2011 в 11:42

msidiagnos01 wrote:

Home » Administer » Site configuration » Languages » Configure
Language negotiation

Главная » Администрирование » Настройка сайта » Языки » Настроить
Определение языка

или admin/settings/language/configure
Вообщем в 7ке такой страницы нет, ну по крайней мере она находится не по этому пути.

Да и еще проблема - не выводятся у меня почему-то ссылки меню только под конкретный язык, пришлось делать через 2 менюшки и 2 блока, отображаемых на конкретном языке.

Ну и попутно, где там галочка чтобы убрать отображение текущего языка? Не хочу через css или content template это делать Smile
Нашел только галочку убирания ссылки на язык из контента

Хотя это мой вообще первый мультиязычный сайт, может это и я вовсе косячу)

Аватар пользователя Kvark Kvark 8 марта 2011 в 19:09

языка два - русский и английский, префиксы: en ru
контент позволяет создавать на одном и другом языке (соттветсвующий переключатель есть при создании)

Аватар пользователя msidiagnos01 msidiagnos01 8 марта 2011 в 19:23

Т.е. например для главной страницы у тебя в списке содержимого два материала? У обоих одинаковый синоним и разный язык?

Аватар пользователя Kvark Kvark 8 марта 2011 в 19:37

У меня так:
About [englsih]
About [russian]

Меню линки одинаково называються, УРЛ альясы одинаковые

попробовал сменить альясы добавив сокращение:
http://www.eurovisa.lt/en/AboutLithuania - работает,
http://www.eurovisa.lt/ru/AboutLithuania - нет - The requested page could not be found.
хотя http://www.eurovisa.lt/node/36 срабатывает, но тут ему уже деваться некуда Smile снипет не помог Sad

Аватар пользователя Shi3A Shi3A 9 марта 2011 в 11:31

Во-во! Та же проблема, нет переключения языка, причем даже в стандартную тему не выводится, прошарил все настройки - везде стоят галки, а блок не отображается =\

Аватар пользователя Kvark Kvark 10 ноября 2015 в 11:47

Нашел! Причем только потому что установил модуль админ меню и он больше показывает инфо чем стандартный (смутно подозреваю что вариаблес тоже имеет к этому причастие...

Аватар пользователя Shi3A Shi3A 10 марта 2011 в 10:28

О, спасибо тебе добрый человек за галочку, я натыкался на эту страницу раньше но в виду того что это мой первый мультиязычный сайт нифига не понял что с ней делать, переключатель появился, Ииииииихаааа Biggrin

Только сначала надо зайти непосредственно на страницу Detection and selection(в русском Удаление и выделение О_о), поставить галку напротив URL, а уже потом на настройку непосредственно URL

Аватар пользователя Kvark Kvark 10 марта 2011 в 19:31

В полку двуякоговорящих семерочников прибыло Smile а еще не забудь поставить префиксы языкам чтоб уж все по порядку было Smile