Чем отличается локализация от интернационализации

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

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

Локализация — это сам процесс перевода.

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

Затем сообщество или отдельные переводчики вытаскивают автоматизированно из кода строки для перевода, и переводят их в специальных программах, — Poedit одна из наиболее распространенных.

Во многих темах и плагинах вам не придется вытаскивать строки из кода. Готовый файл для перевода .pot часто уже лежит в папке /languages. Вам остается его только загрузить в программу и перевести.

Пример локализации плагина

Для примера возьмем плагин Contact Form 7.

Шаблон для перевода находится в папке wp-content/plugins/contact-form-7/languages

 

Обратите внимание, Contact form 7 популярный плагин, и в нём уже есть русский перевод.

Работа в программе Poedit

Скачиваем и устанавливаем её. Запускаем Файл -> Создать из POT файла.... Выбираем язык перевода (ru_RU). Переводим. Жмем Файл -> Сохранить как..., программа автоматически создаст два файла .po и .mo. Переносим в каталог wp-content/languages/plugins/ с названием my-plugin-ru_RU.mo.

Не могу найти POT файл

Папка wp-content/plugins/my-plugin/languages не является обязательным месторасположением переводов.

Например, файлы перевода плагина Autoptimize находятся в каталоге wp-content/plugins/autoptimize/localization

Другие плагины, например Akismet, загружают готовые файлы перевода в директорию wp-content/languages, исходя из языковых настроек WordPress.

Для популярных плагинов практически всегда есть готовый POT файл и готовые скомпилированные файлы переводов на разные языки.

Есть .po, но нет .pot файла

Просто переименуйте .po в .pot, и из него создавайте нужный вам языковой перевод.

Нет ни .po, ни .pot

Если вы вообще не можете найти никаких следов локализации, значит вам надо сгенерировать шаблон из исходного кода, если плагин или тема были правильно интернационализированы разработчиком.

Сгенерировать POT файл вы можете с помощью той же программы Poedit.

  • Запускаете программу. Файл -> Создать.... Выбор языка, жмете Отменить
  • Нажимаете Файл -> Сохранить как.... Сохраняете в папку плагина с расширением .pot
  • Жмете Извлечь из исходного кода, откроется диалог со свойствами. На первой вкладке задаете название проекта и язык.
  • На второй вкладке, добавляете и исключаете папки из перевода относительно базового пути.

  • На третьей вкладке Ключевые слова исходных файлов вписываете функции WordPress. Вот весь список. Не обязательно записывать все, но программа вытащит только если найдет совпадения.


  • откроется сгенерированный POT файл и теперь из него можно создавать нужные языки переводов.

Если вы вдруг закрыли свойства извлечения, открыть диалог можно заново из меню Каталог -> Свойства.... Если вы сгенерировали POT файл, но забыли указать ключевую функцию или каталог, внесите изменения в Свойства и нажмите кнопку Обновить на панели инструментов.

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

Локализация с помощью плагина

Мы будем использовать Loco Translate, потому что он наиболее популярный и активно развивается, т.е совместим с последними версиями WordPress.

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

На странице отображены включенная тема и работающие плагины. Если вы хотите увидеть все, жмете See all plugins. Появится список.

Допустим, я хочу создать файл перевода для плагина WP Digg This. Шаблон и переводы в нём отсутствуют.

 

Нажимаю сначала Create template, затем New Language. Loco Translate сообщает, что нашел 5 строк для перевода. Выбираем язык и жмем Start translating.

 

Появится окно со списком строк для перевода. После сохранения файлы .po и .mo автоматически генерируются.

Локализация шаблона WordPress

Процесс аналогичный переводу плагинов.

Вы можете использовать программу Poedit или плагин Loco Translate, что вам больше нравится.

Вы больше не будете себе отказывать во всём многообразии тем только потому что отсутствует файл перевода. Теперь вы можете самостоятельно локализовать нужный вам плагин или шаблон.

Источник: wp-best.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *