Админка С1 - на английском языке. Но ее можно локализовать. Официально есть локализация на русском, украинском и голландском. Сообщество сделало локализацию на датском и китайском.
Если нет локализации на вашем языке, ее можно сделать самому. На английском языке есть статья о том, как локализовать админку на свой родной язык. Разберемся.
Немного теории
Строки, использующиеся в пользовательском интерфейсе админки, хранятся в XML файлах по такому пути:
(путь к корневой папке сайта C1)\Composite\localization\*.xml
Однако файлы локализации должны находиться в папке с кодовым названием языка здесь:
(путь к корневой папке сайта C1)\App_Data\Composite\LanguagePacks\(код языка)\*.xml
Например, \App_Data\Composite\LanguagePacks\ru-RU\*.xml
Чтобы локализовать админку, нужно:
Если нет локализации на вашем языке, ее можно сделать самому. На английском языке есть статья о том, как локализовать админку на свой родной язык. Разберемся.
Немного теории
Строки, использующиеся в пользовательском интерфейсе админки, хранятся в XML файлах по такому пути:
(путь к корневой папке сайта C1)\Composite\localization\*.xml
Однако файлы локализации должны находиться в папке с кодовым названием языка здесь:
(путь к корневой папке сайта C1)\App_Data\Composite\LanguagePacks\(код языка)\*.xml
Например, \App_Data\Composite\LanguagePacks\ru-RU\*.xml
Чтобы локализовать админку, нужно:
- создать копии этих файлов, заменяя буквенный код английского языка США "en-us" в их названии на код родного языка, например, русского "ru-ru",
- и переместить эти копии в соответствующую подпапку языка в \App_Data\Composite\LanguagePacks
- перевести строки в таких файлах на родной,
- и обязательно зарегистрировать каждый такой новый файл в файле конфигурации C1 ((путь к корневой папке сайта C1)\App_Data\Comosite\Composite.config)
Но это не наш метод.
Есть специальная программа от создателей этой CMS - C1 Localization Tool, которая:
Переводим админку при помощи программы локализации
<configuration>
<appSettings>
<add key="websitePath" value="D:\WebSite\CompositeC1" />
<add key="sourceCultureName" value="en-US" />
<add key="targetCultureName" value="ru-RU" />
</appSettings>
</configuration>
Есть специальная программа от создателей этой CMS - C1 Localization Tool, которая:
- предоставляет доступ к строкам в этих файлах локализации для перевода,
- автоматически загружает перевод для строки, используя Google Translate,
- создает нужный файл локализации для родного языка
- и регистрирует его в файле конфигурации C1.
Переводим админку при помощи программы локализации
- Загружаем и распаковываем программу LocalizationTool.zip. Но не запускаем!
- Редактируем параметры в файле конфигурации программы LocalizationTool.exe.config (см. ниже) и сохраняем файл.
Допустим, ваш веб-сайт С1 находится на локальном диске по такому пути: D:\Websites\CompositeC1. И вы хотите перевести админку на русский. Вот что вам нужно указать в файле конфигурации:
<configuration>
<appSettings>
<add key="websitePath" value="D:\WebSite\CompositeC1" />
<add key="sourceCultureName" value="en-US" />
<add key="targetCultureName" value="ru-RU" />
</appSettings>
</configuration>
А теперь переводим.
- Запускаем программу.
- Все отмеченные опции (внизу) оставляем отмеченными.
- В списке Files выбираем файл локализации для перевода, а в списке String Keys, строку локализации.
- При включенной опции Get translation from Google Translate, программа автоматически загрузит вариант перевода от Google Translate (иногда в точку, иногда криво, иногда очень смешно даже :))
- Если нужно исправляем перевод и нажимаем клавишу Enter. При нажатии Enter будет загружена следующая непереведенная строка (при включенной опции Pressing Enter will save and move to next)
- Как только хоть одна строка переведена, программа создает файл локализации на родном языке и регистрирует его в Composite.config (при включенной опции Automatically register updates in Composite.config)
То есть если вас вдруг устраивает не всегда правильный перевод от Google Translate, достаточно нажимать и нажимать Enter, пока не будет переведена последняя строка :)
Кнопка Find first missing позволяет найти еще не переведенные строки.
(Отмечу, что программа "вылетает" с ошибкой, если ей попадается исходный файл локализации без строк. Просто перезапустите программу и не выбирайте такой файл для перевода.)
Переключаем язык админки
- В админке в главном меню нажимаем Tools и выбираем пункт Regional Settings.
- В окне с тем же названием выбираем наш язык в ниспадающем списке и нажимаем ОК.
- В появившемся диалоговом окне нажимаем ОК тоже.
Админка перезапустится (и также сам сайт) и пользовательский интерфейс будет на вашем родном языке.
Экспортируем локализацию в модуль расширения
Если вы сделали локализацию админки, возможно вам захочется поделиться ею с другими. Для этого ее можно и нужно экспортировать в модуль расширения при помощи Package Creator'a.
- Устанавливаем Package Creator.
- Переключаем админку на язык локализации, которую мы хотим экспортировать (как описано выше).
- В разделе Package Creator, выбираем узел Packages, вызываем контекстное меню и выбираем пункт Create <имя языка> package.
- В появившемся окне, заполняем поля, сохраняем и закачиваем получившийся модуль на локальный диск (Download package) - т.е. так же, как мы это делаем при создании любого другого модуля расширения (см. Создание модуля расширения (4)), только на этот раз в модуль-заготовку ничего добавлять не нужно.
Теперь сохраненный таким образом Zip файл (фактически локализация админки на ваш родной язык в виде модуля) можно установить на любом другом C1 (System; Packages | Installed packages | Local packages; Install Local Package).
Важно! Не путайте локализацию админки (пользовательский интерфейс административной консоли в С1) и локализацию веб-сайта, созданного при помощи C1. О локализации веб-сайтов я расскажу в другом сообщении.
Комментариев нет:
Отправить комментарий