# Локализация Plesk

Содержание

В этом разделе вы узнаете, как перевести интерфейс Plesk на ваш язык.

## Общие сведения об обновлениях

Plesk доступен более чем на 30 языках. В этом разделе вы увидите примеры, показывающие, как перевести Plesk на эсперанто, но вы можете использовать те же шаги для перевода Plesk на любой язык.

Процедура включает следующие шаги:

- Экспорт файлов английской (en-US) локали и подготовка их к переводу.

- Перевод сообщений пользовательского интерфейса на целевой язык.

- Импорт полученных файлов локали в Plesk и регистрация новой локали в Plesk.

## Подготовка файлов локали к переводу

Прежде чем вы сможете начать перевод, вам необходимо экспортировать и подготовить файлы локали.

Подготовка файлов локали

1. Войдите на сервер по SSH или RDP.

2. Скопируйте содержимое следующих каталогов (включая подкаталоги) в отдельное место:

   - Plesk для Linux

     - `/usr/local/psa/admin/application/admin/resources/languages/en-US/`

     - `/usr/local/psa/admin/application/default/resources/languages/en-US/`

     - `/usr/local/psa/admin/plib/locales/en-US/`

     - `/usr/local/psa/admin/application/smb/resources/languages/en-US/`

   - Plesk для Windows

     - `%plesk_dir%admin\application\admin\resources\languages\en-US`

     - `%plesk_dir%admin\application\default\resources\languages\en-US`

     - `%plesk_dir%admin\plib\locales\en-US\`

     - `%plesk_dir%admin\application\smb\resources\languages\en-US`

   Файлы в этих каталогах содержат весь текст пользовательского интерфейса Plesk.

   Примечание

   Файл `common_cli_messages_en-US.php` содержит только текст, используемый утилитами командной строки Plesk. Если у вас нет особых причин для перевода этого текста, содержимое файла можно не переводить.

3. Переименуйте каталоги и файлы, чтобы они соответствовали целевому языку. Имена файлов английской локали и каталогов, в которых они находятся, включают «en-US». Вот что это значит:

   - Часть «en» обязательна. Это двухбуквенный код ISO 639-1, указывающий на язык (английский).

   - Часть «US» не является обязательной. Это двухбуквенный код ISO 3166-1, указывающий страну, в которой говорят на конкретном диалекте. Он используется, чтобы различать локали для разных диалектов одного и того же языка, например, португальский (Португалия) и португальский (Бразилия).

   В нашем примере код языка эсперанто — «eo», язык не имеет национальных диалектов. Таким образом, мы заменяем каждый экземпляр «en-US» в именах каталогов и файлов на «eo», например:

   `/usr/local/psa/admin/plib/locales/en-US/messages_en-US.php`

   становится

   `/usr/local/psa/admin/plib/locales/eo/messages_eo.php`

   и так далее. Далее идет раздел, который мы назовем «код целевого языка».

4. Редактировать следующий файл:

   - (Plesk для Linux) `/usr/local/psa/admin/plib/locales/<target language code>/messages_<target language code>.php`

   - (Plesk для Windows) `%plesk_dir%admin\plib\locales\<target language code>\messages_<target language code>.php`

   Замените все записи «en-US» кодом вашего целевого языка. Итак, в нашем примере мы редактируем строку

   «включает(__DIR__ . „/common_messages_en-US.php“);»

   чтобы это выглядело так:

   «включает(__DIR__ . „/common_messages_eo.php“);»

   и т. д.

5. Редактировать следующий файл:

   - (Plesk для Linux) `/usr/local/psa/admin/plib/locales/<target language code>/meta.xml`

   - (Plesk для Windows) `%plesk_dir%admin\plib\locales\<target language code>\meta.xml`

   Здесь вы обозначаете свойства локали, которые будут отображаться в интерфейсе Plesk:

   - `<language>English</language>` Здесь вам нужно указать название целевого языка, которое будет отображаться в Plesk.

   - (Необязательно) `<country>United States</country>` Здесь вы можете указать страну, в которой говорят на конкретном диалекте целевого языка. Он будет показан в Plesk. Вы можете опустить этот параметр, если он не нужен.

   - (Необязательно) `<rtl>true</rtl>` Укажите этот параметр, если целевой язык использует письмо справа налево. В противном случае опустите его.

   У эсперанто нет диалектов, характерных для конкретной страны, и в нем не используется письмо справа налево. Итак, в нашем примере содержимое файла будет выглядеть так:

       <?xml version="1.0" encoding="utf-8"?>
       <!-- Copyright 1999-2022. Plesk International GmbH. All rights reserved. -->
       <locale>
         <language>Esperanto</language>
       </locale>

Теперь файлы локали готовы к переводу.

## Перевод файлов локали

Теперь, когда файлы локалей экспортированы и подготовлены, вы можете приступить к их переводу.

Примечание

Файлы локали, предоставляемые Plesk, используют кодировку UTF-8. Не меняйте кодировку, иначе переведенные сообщения могут отображаться неправильно в интерфейсе Plesk.

Файлы локалей Plesk — это файлы PHP, содержащие идентификаторы ключей локализации, соединенные с удобочитаемыми сообщениями, например:

> `'admin-alias.passwordConfirmation' => 'Confirm password',`

Чтобы перевести Plesk, вам нужно перевести удобочитаемые сообщения на целевой язык. Итак, в нашем примере переведенная строка будет выглядеть так:

> `'admin-alias.passwordConfirmation' => 'Konfirmu pasvorton',`

Примечание

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

При переводе помните о следующих рекомендациях, чтобы убедиться, что полученную языковую локаль можно было без проблем импортировать в Plesk.

- Не удаляйте запятые в конце каждой строки. В противном случае попытка переключиться на переведенную локаль в Plesk приведет к ошибке.

- Если текст сообщения не содержит кавычек, заключите текст в одинарные или двойные кавычки.

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

  `'b_add_ip_for_clients' => 'Add IP address to client\'s pools.',`

  или так:

  `'b_add_ip_for_clients' => "Add IP address to client's pools.",`

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

  `'backup__backup_overwrite_file_confirm_text' => 'Резервная копия файла с именем \"%1\" уже существует. Хотите заменить?',`

  или так:

  `'backup__backup_overwrite_file_confirm_text' => 'Резервная копия файла с именем "%1" уже существует. Хотите заменить?',`

- Не переводите переменные, такие как «%1» или «%%ip_address%%». Они заменяются фактическими значениями в интерфейсе Plesk. Например, это сообщение

  > `'IP-адрес %%ip_address%% был назначен для %%client_name%%.'`

  > может выглядеть так в интерфейсе Plesk:

  > «IP-адрес 192.168.12.34 был назначен John Doe»

- Некоторые переменные заменяются не числовыми значениями, а удобочитаемыми сообщениями, найденными в файлах локалей. Например, это сообщение

  `'Если вам нужна помощь, прочтите наше %%link%%.'`

  берет значение %%link%% из этого

  `'руководство по созданию сайта'`

  и вместе они выглядят в интерфейсе Plesk так:

  «Если вам нужна помощь, прочитайте наше руководство по созданию веб-сайта»

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

- Не переводите HTML entities, такие как `&lt;` и `&gt;`. Кроме того, не переводите escape-последовательности, такие как `\n`.

## Импорт переведенной локали в Plesk

Прежде чем импортировать переведенные файлы локалей в Plesk, мы настоятельно рекомендуем вам проверить их синтаксис. Вы можете сделать это, выполнив следующие команды для каждого переведенного файла локали:

- (Plesk для Linux) `/usr/local/psa/admin/bin/php -l <locale file name>.php`

- (Plesk для Windows) `"%plesk_dir%admin\bin\php" -l <locale file name>.php`

Ожидаемый результат выглядит так:

«В <locale file name>.php не обнаружено синтаксических ошибок»

Если выходные данные содержат одну или несколько строк, начинающихся с «Ошибка распознавания PHP», вам необходимо найти и исправить синтаксические ошибки, прежде чем импортировать переведенный файл локали в Plesk. В противном случае попытка переключиться на переведенную локаль в Plesk приведет к ошибке.

Импорт новой локали в Plesk

1. Войдите на сервер по SSH или RDP.

2. Убедитесь, что все новые файлы локали находятся на своих местах:

   - Plesk для Linux

     - `/usr/local/psa/admin/application/admin/resources/languages/<target language code>/`

     - `/usr/local/psa/admin/application/default/resources/languages/<target language code>/`

     - `/usr/local/psa/admin/plib/locales/<target language code>/`

     - `/usr/local/psa/admin/application/smb/resources/languages/<target language code>/`

   - Plesk для Windows

     - `%plesk_dir%admin\application\admin\resources\languages\<target language code>`

     - `%plesk_dir%admin\application\default\resources\languages\<target language code>`

     - `%plesk_dir%admin\plib\locales\<target language code>\`

     - `%plesk_dir%admin\application\smb\resources\languages\<target language code>`

3. Выполните следующую команду, чтобы зарегистрировать новую локаль в Plesk:

   `plesk db "заменяет значения локалей ('<target language code>', 'true')"`

   Итак, в нашем примере команда будет выглядеть так:

   `plesk db "заменяет значения локалей ('eo', 'true')"`

Поздравляем! Ваша новая локаль зарегистрирована в Plesk.

- Вы можете найти новый язык в разделе Инструменты и настройки > Языки.

- Вы можете переключиться на новый язык в разделе Профиль и настройки, выбрав его в меню «Язык интерфейса администратора».

- Supported Interface Languages in Plesk