i18n Мультиязычный сайт - вводим multilingual variable (слоган, подвал, форма контактов и т.п.)

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

Аватар пользователя relogger relogger 19 мая 2008 в 15:57

Переменные не переведённые модулем локализации можно всё-таки сделать мультиязычными.
Для локализации я использую i18n.
Мне нужно было перевести такие переменные как site_name, site_slogan, site_mission, site_footer,contact_form_information.

Для этого необходимо отредактировать файл /sites/default/settings.php

Дополняем его:

/**
 * Multilingual settings
 *
 * This is a collection of variables that can be set up for each language when i18n enabled.
 * These are the basic ones for Drupal core, but you can add your own here.
 */

$conf['i18n_variables'] = array(
  'site_name',
  'site_slogan',
  'site_mission',
  'site_footer',
  'anonymous',
  'menu_primary_menu',
  'menu_secondary_menu',
  'contact_form_information',
);

Сохраняем, переходим в нужный раздел админки.
Например, admin/build/contact/settings для редактирования текста контактной формы.
Под полем, которое мы хотим сделать доступным на нескольких языках должна появиться надпись:
This is a multilingual variable.
Есть? Значит мы правильно внесли переменные и они теперь многоязычные.

Переключаемся на нужной странице на желаемый язык и вводим значение для поля. И так для каждого языка.

Комментарии

Аватар пользователя kodo kodo 20 мая 2008 в 7:14

Похоже с шестерке это не работает. Т.е. надпись This is a multilingual variable. появляется. Но если вводишь надпись на другом языке, то она и сохраняется для всех. В Translate interface новых записей не появилось.

Аватар пользователя meta meta 30 июля 2008 в 4:07

kodo: Похоже с шестерке это не работает..... надпись на другом языке, то она и сохраняется для всех.
Работает (6.3). Нужно пройтись по ВСЕМ языкам, и всюду изменить значение полей multilingual variable.
Значения записываются в таблицу i18n_variable .

Аватар пользователя mario8 mario8 2 сентября 2008 в 10:44

Работает и под шестерку инфо почитаете. Я делал сайт и на 3 языках и отлично работает только надо правильно сконфигурировать модуль

Аватар пользователя kodo kodo 17 января 2009 в 13:48

"meta" wrote:
Работает (6.3). Нужно пройтись по ВСЕМ языкам, и всюду изменить значение полей multilingual variable.
Значения записываются в таблицу i18n_variable .

Да, был не прав, действительно все работает! Большущее спасибо! Видно тогда не прошелся по ВСЕМ языкам... Smile

Аватар пользователя Dark_kz Dark_kz 25 марта 2009 в 15:15

Названия полей я перевел через поиск (admin/build/translate/search), искал нужные строки в нужных языках и добавлял переводы

Аватар пользователя Dark_kz Dark_kz 25 марта 2009 в 15:22

А есть ли модуль позволяющий разместить форму контактов в блок?
Тогда я бы мог показать блок на странице /contact, а заголовки полей сгенерировать.
Пробовал делать через Webform, но в нем мультиязычности нет, и в блок его не вставишь (или можно? просветите).

Аватар пользователя pauliv pauliv 25 марта 2009 в 15:53

"Dark_kz" wrote:
А есть ли модуль позволяющий разместить форму контактов в блок?

поищи, где то либо на Setegnom или тут была ссылка на такое.

Аватар пользователя olegall olegall 2 мая 2011 в 19:40

У меня данный способ в drupal 6.20 не работает, название сайта не переводится. Перепробовал все.

Пардон.Все работает. Вы только забыли указать, что для названия сайта, миссии и т.д. - разные варианты вписываются в поля "Информация о сайте" для разных языков, а я то вписал одно название сайта и пытался его перевести с помощью поиска, что конечно же не работало и повлекло написание этого коммента. Но до меня дошло как я ошибался, через несколько часов но дошло...

Аватар пользователя sheepyshape sheepyshape 29 мая 2012 в 10:04

Подскажите, вставлял код и так и по-другому и всяко разно, но все равно надпись This is a multilingual variable не появляется, перевод не работает Sad Что я делаю не так? Какие могут быть проблемы при вставке кода?