Телефоны поддержки:
(977) 716-1580
» » Как перевести плагины

Как перевести плагины

05 август 2018, Воскресенье
251
0

Перевод плагинов и шаблонов Osclass. i18n является аббревиатурой internationalization. Вы можете получить дополнительную информацию из Википедии. OSClass использует библиотеки GNU Gettext.

Для того, чтобы переводимые строки выводились в приложении, необходимо обернуть исходную строку:

($text) — ищет версию для перевода $text и возвращает результат, а именно:(«Hello») ; _e($text) — ищет переведенную версию $text и выводит результат на экран

(same as echo __($text))
_e("Hello") ;

Однако, для того, чтобы сделать строку перевода для плагина или шаблона, вы должны добавить дополнительный параметр в функцию:

__($text, $domain) и _e($text, $domain).  Переменная $domain будет выводить название плагина или темы. В случае основным шаблоном modern, он будет выглядеть так: __("Hello", "modern") and _e("Hello", "modern").

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

__e("Hello $name", "modern") ;

Строка для перевода, взята из источников, так что в переводе увидите: Hello $name. Тем не менее, _e будет вызван с аргументом, как Hello Juan и Gettext не найдет подходящий перевод и будет возвращать аргумент: Hello Juan. Решение заключается в использовании Printf. Вот правильное решение:

printf(__("Hello %s", "modern"), $name) ;

Практические советы

Целые фразы: в большинстве языков порядок слов отличается. Разделитель в строках: не включают в себя целые страницы текста в одной строке. Используйте sprintf и printf:

sprintf(__('Replace %s with %s', 'modern'), $a, $b) ;

или

__('Replace ') . $a . __(' with ') . $b ;

Создание файлов .PO

Это файл, который отвечает за перевод строк. Путей создания POT файла множество, мы используем для редактирования и создания программу POedit. Эта статья объясняет, как создать .PO файл. После окончания перевода, вы должны поместить в нужное место файл .mo:

Темы: {theme folder}/languages/{locale}/theme.mo Плагины: {plugin folder}/languages/{locale}/messages.mo

{locale} используется ISO код языков, а именно: ru_RU, en_US, es_ES, de_DE, fr_FR, es_AR и т.д.

Напоследок, если вы хотите заменить флэш-сообщения, вы должны скопировать файл изменить перевод при помощи POedit в файле .ро (он генерирует файл .mo).

Обсудить
Материалы по теме:
Плагин Regfields 11 август 2018, Суббота
Шаблон Trade для Osclass 11 август 2018, Суббота

Читайте также:

Резервное копирование данных
05 август 2018, Воскресенье
Резервное копирование данных
Как создать тему
05 август 2018, Воскресенье
Как создать тему
Как создать плагин
05 август 2018, Воскресенье
Как создать плагин
Автообновление тем и плагинов
05 август 2018, Воскресенье
Автообновление тем и плагинов
Категории
05 август 2018, Воскресенье
Категории
Удаляем маркет из админке в теме modern
05 август 2018, Воскресенье
Удаляем маркет из админке в теме modern
Добавить комментарий
Комментарии (0)
Прокомментировать
Кликните на изображение чтобы обновить код, если он неразборчив