Перевод на русский язык дополнительных модулей Друпал

28 Май 2008
Опубликовано VladSavitsky

Задача

Перевести модули, которые установлены на сайте, на русский язык.

Решение

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

Варианты

  • С помощью новой функциональности Drupal 6
  • Импорт из po-файла

С помощью новой функциональности Drupal 6

Перевод модуля импортируется Drupal автоматически при установке модуля.
Рекомендуется, если вы до этого ни разу не включали модуль.

  1. Зайти на http://drupaler.ru/translate/languages/ru/export .
  2. Выбрать нужный нам проект. Имя проекта можно узнать так:
    1. Найти на drupal.org страницу нужного нам модуля - например, через список модулей.
    2. Адрес этой страницы должен иметь вид http://drupal.org/project/<имя_модуля>. Именно это имя_модуля и является искомым именем проекта.
  3. Выбрать нужный релиз (Release). На всякий случай следует выбирать версию, в точности равную используемой (в этом случае перевод будет наиболее полон).
  4. Указать тип экспорта(Type of export:) - перевод(Translation).
  5. Выбрать используемый формат (Format used:) - Drupal 6 package format.
  6. Нажать кнопку Экспорт(Export)
  7. Распаковать скачанный архив таким образом, чтобы все po-файлы лежали в папке <путь_к_папке_модуля>/translations. Скорее всего, <путь_к_папке_модуля> равен /all/<имя_модуля>.
  8. Проверяем, что у только что распакованных файлов и папок нормальные права - 644 для файлов и 755 для папок.
  9. Если до этого модуль не был ни разу включён, то просто включить его на странице http://example.com/admin/build/modules. Если вы не помните, включали ли вы модуль то того, то включите его и посмотрите, произойдёт ли импорт языковых файлов (должна в какой-то момент появиться страница "Импорт переводов интерфейса."). Если произошёл, то дальше можно не читать.
  10. Если же вы уже включали модуль (или он сейчас уже включён), то настоятельно рекомендую прямо сейчас перейти ко второму способу, причём то, что вы уже сделали в рамках первых 6 пунктов, не откатывайте. Это пригодится, если впоследствии вы решите вдруг полностью удалить и обновить перевод всего Drupal сразу. Если же вы упорствуете в своём желании воспользоваться новым методом Drupal 6, то напишите об этом в комментариях. Я могу привести вам 3 способа решения этой проблемы.

Импорт из po-файла

Этот вариант будет работать и в Drupal 5, и в Drupal 6.
Для каждого модуля администратор загружает отдельный файл, который не сохраняется на сервере, а сразу обрабатывается и добавляется в перевод, как если бы вы перевели каждую фразу по-отдельности через /admin/build/translate/search. В комбинации с первым способом рекомендуется для уже работающих, но ещё не локализованных модулей.

  1. Открыть в браузере: http://drupaler.ru/translate/languages/ru/export .
  2. Выбрать нужный проект.
    Имя проекта можно узнать так:

    1. Найти на drupal.org страницу нужного модуля - например, через список модулей.
    2. Адрес этой страницы должен иметь вид http://drupal.org/project/<имя_модуля>. Именно это имя_модуля и является искомым именем проекта.
  3. Выбрать релиз (Release). Следует выбирать версию, в точности равную используемой (в этом случае перевод будет наиболее полон).
  4. Указать тип экспорта(Type of export): перевод(Translation).
  5. Выбрать используемый формат (Format used) - всё в один файл(All in one file).
  6. Нажать кнопку Экспорт(Export)
  7. Убедиться в том, что стандартный модуль Locale установлен. Если нет - установить.
  8. Открыть на своём сайте страницу Импорта перевода:
    • Drupal 5: /admin/settings/locale/language/import
    • Drupal 6: /admin/build/translate/import
  9. Выбрать po-файл, сохранённый с drupaler.ru.
  10. Создать русский язык, если он не был создан перед этим. Выбрать русский язык.
  11. Нажать кнопку Импорт (Import).

Использованные материалы

 
 
 

RSS-лента новостей

Dries Buytaert по-русски
]]>Русский поиск Drupal]]>

Перенос сайта из Joomla в Drupal
Перенос сайта из WordPress в Drupal

]]> Drupal - это бесплатная система управления контентом с открытым исходным кодом ]]>