В этой статье я расскажу и покажу вам, как можно перевести тему для WordPress (или плагин). Я настоятельно рекомендую использовать тему для WordPress, которая уже переведена на русский язык, однако, если выбранная вами тема не локализована, вы сможете перевести ее самостоятельно с помощью Poedit, Loco Translate или Codestyling Localization.
Оглавление
1. Текстовые строки: файлы .POT, .PO и .MO
1.1. Заготовка файла PO для перевода на новый язык (.POT)
1.2. Человеко-читаемый файл (PO) и бинарный файл (MO)
2. Как перевести тему для WordPress (или плагин)
2.1. Программа Poedit
2.2. Плагин «Loco Translate»
2.3. Плагин «Codestyling Localization»
Введение
Темы и плагины содержат текстовые строки в своих файлах. Каждый раз, когда вы видите что-то похожее на:
<php _e( ‘Text’, ‘a-text-domain’ ) ?>
в файле с расширением .PHP темы или плагина, то вам необходимо осуществить перевод такого элемента.
Текстовые строки могут присутствовать как в пользовательской, так и в администраторской части сайта.
Примеры текстовых строк из пользовательской части:
- “Search” (кнопка поиска);
- “Nothing found” (отображается при пустом результате поиска);
- “Read more” (отображает полное содержимое поста);
Примеры текстовых строк из администраторской части:
- “Top primary menu” (текст в зоне виджетов)
- “Ready to publish your first post?” (текст в панели управления WordPress)
- “Number of posts to show:” (текст в панели управления WordPress)
Такие инструменты, как Poedit (который вы можете использовать совершенно бесплатно) или плагины, как Loco Translate или Codestyling Localization (также бесплатны) позволяют вам переводить текстовые строки из файлов системы WordPress. Существуют также и премиальные решения, позволяющие осуществлять перевод текстовых строк, например WPML.
В этой статье я покажу вам, как осуществляется перевод текстовых строк: при помощи Poedit, Loco Translate или плагина Codestyling Localization. Но для начала, давайте узнаем, что представляют собой файлы с расширениями .POT, .PO и .MO.
1. Текстовые строки: файлы .POT, .PO и .MO
Темы для WordPress локализуются при помощи GNU gettext framework. Этот способ используется как для самой системы WordPress, так и для всех тем и плагинов. Однако стоит учитывать, что разработчики не всегда предусматривают возможность локализации своих решений, поэтому всегда обращайте внимание перед загрузкой или покупкой темы (или плагина) на наличие такой возможности.
Большое количество тем для WordPress поддерживают многоязычность. В их состав должны входить соответствующие файлы с расширениями .POT, .PO и .MO.
1.1. Заготовка файла PO для перевода на новый язык (.POT)
Основным файлом для создания локализованных версий тем (или плагинов), является файл .PO. Обычно, файл .POT представляет собой перечень всех текстовых строк, используемых в файлах темы на английском языке.
Разработчики используют специальные инструменты, (такие, как gettext) которые производят анализ PHP источника и создают файл .POT, который содержит список всех текстовых элементов, требующих перевода.
Файл .POT создан разработчиками темы или плагина именно для удовлетворения нужд пользователя, и служит начальной точкой при создании локализаций. Система WordPress не использует этот файл в своей работе.
Файл .POT можно найти в языковой папке темы или плагина.
Иногда языковая папка называется lang (а не language), также в зависимости от темы или плагина файл .POT может идти вместе с файлами .PO и .MO, и файлом-инструкцией README.TXT (инструкция для переводчиков).
1.2. Человеко-читаемый файл (PO) и бинарный файл (MO)
Файл .PO включает в себя оригинальные и переведенные текстовые записи в двух колонках. Это перевод, начатый кем-то до вас (автором темы, профессиональным переводчиком или пользователем темы для WordPress и др.), который может быть полностью завершенным.
Система WordPress не использует возможно, что ваша тема или плагин уже переведены на требуемый язык. Например, если вы видите файл ru_RU.po, то ваша тема уже переведена на русский язык. Перейдя по этой ссылке вы сможете ознакомиться с кодами стран и языков.
Файл .MO содержит содержимое, полностью совпадающее с файлом PO. Эти два файла отличаются лишь форматированием. В то время, как файл PO адаптирован для чтения человеком, файлы MO содержат скомпилированную информацию, удобную для использования компьютерами. Система WordPress работает с локализациями через файлы .MO.
Файл .MO создается программой Poedit в автоматическом режиме, каждый раз, когда вы сохраняете файл PO. Единственное, что требуется от вас при работе с этими файлами — загрузить или обновить файл на сервере после внесения изменений в файл .PO.
2. Как перевести тему для WordPress (или плагин)
2.1. Программа Poedit
Poedit — это программное решение (доступно для Windows, Mac и Linux), которое вы можете использовать для перевода темы или плагина на требуемый язык. Вы можете загрузить эту программу совершенно бесплатно на сайте poedit.net.
У данной программы существует премиальная версия, добавляющая к Poedit дополнительные функции и инструменты, такие как выделенная служба поддержки WordPress, подсчет слов, запоминание внесенных значений и многие другие. Стоимость этой версии — $19.99.
Основные шаги:
1. Запустите Poedit и выберите File(Файл) > New Catalog from POT / PO file(Новый каталог из файла POT / PO)
2. Выберите файл .POT или .PO ил каталога темы или плагина, которые вам требуется перевести (вы сможете найти эти файлы в каталогеwp-content/themes/ваша тема/language/)
3. Вы увидите всплывающее окно, предлагающее выбрать язык локализации. Выберите ваш язык:
4. Нажмите OK, после чего Poedit присвоит нужное название файлам автоматически. Если вы выбрали русский язык (Россия), то это будет файл: ru_RU.po
5. Сохраните файл на своем компьютере
6. После этого вы можете приступить к переводу вашей темы или плагина. В левой части будет отображаться текстовый массив для перевода, в то время как, все переведенные элементы будут отображаться в правой части. В формах в нижней части экрана будут отображаться исходные тексты, варианты локализации и комментарии для переводчиков. Процесс перевода крайне прост — вам нужно выбрать слово или предложение, ввести свой вариант перевода и нажать кнопку “Validate (Подтвердить)”
ЗАПОМНИТЕ:
- Необходимо сохранять все специальные символы из оригинального текста при переводе (обратите внимание на скриншот выше);
- Нет необходимости переводить все текстовые строки. Например, если вам не требуется переводить интерфейс администраторской части сайта.
7. Когда вы завершите работу, обязательно сохраните внесенные изменения. Программа Poedit автоматически создаст оба файла: .po и .mo. Вам останется только загрузить их в папку, содержащую языковые пакеты вашей темы.
2.2. Плагин «Loco Translate»
Loco Translate является лучшим плагином, предназначенным для перевода тем WordPress и встраивается непосредственно в панель управления системой WordPress, не требуя при этом использования внешних редакторов, наподобие Poedit.
Главные особенности:
- функционал редактора PO в рамках панели администратора WordPress;
- возможность создания и изменения языковых файлов прямо в каталогах темы или плагина;
- экспорт текстовых строк;
- компилирование файлов MO;
- создание резервных копий файлов PO
2.3. Плагин «Codestyling Localization»
(Этого плагина уже не существует.)
Другим популярным решением является плагин «Codestyling Localization«. Вы можете управлять локализациями и вносить все необходимые изменения в файлы .PO и .MO, прямо через панель управления WordPress.
Codestyling Localization позволяет производить анализ файлов-источников и может использовать Microsoft Translator API или Google Translate API в процессе перевода (инструкции для плагина).
Тем не менее, если вы являетесь продвинутым пользователем компьютера, то я настоятельно рекомендую использовать программу Poedit для перевода ваших тем и плагинов на русский язык. Это может казаться немного сложнее, но при этом вам не потребуется установка и настройка еще одного плагина.
Elmin says
Здравствуйте.У меня такая проблема:в общем я через поэдит создал файл по…потом перевел определенные выражения и загрузил обратно в файл lang ноизменений не произошло..не подскаэите в чем может быть проблема?я хочу на азербайджанский перевожу.в настройках вордпресса азербайджанский тоже выбираю
Elmin says
файл мо поэдит сам сгенерировал и его я тоже загрузил на хост
Андрей says
Спасибо за статью. Воспоьзовался плагином Loco Translate
а можно ли найти стандартный перевод кнопок, основные части перевел сам, что бы в глаза пользователям не бросались.
АМТ says
Loco Translate хорош, очень даже хорош.