Создание po mo файлов для перевода с нуля в теме WordPress
Возможно, я что-то упускаю, но я действительно не могу найти ответ на свой вопрос в интернете.
Я создаю новую тему WordPress с нуля (буквально с нуля) и хотел бы создать папку languages с файлами PO и MO в ней.
Я хочу сгенерировать этот файл перевода MO с нуля
Я искал хороший учебник, который поможет мне начать и понять всю процедуру, но все хорошие руководства, которые я нашел, рассказывают о том, как переводить строки, которые уже существуют... то есть файл MO уже существует, строки уже в нем есть, и мне нужно их перевести... это довольно просто, но это не то, что мне нужно.
Я хотел бы сгенерировать что-то с нуля, используя свои собственные пользовательские строки... + Я хочу всегда иметь возможность добавлять больше строк и компилировать их снова для обновления PO файла.
Может кто-нибудь отправить хороший учебник о том, как сделать это с нуля? Я что-то упускаю?
Большое спасибо

- Установите wp-cli на вашу машину для разработки.
- Выполните команду
wp i18n make-pot . languages/my-theme.pot
в папке вашего плагина/темы (wp-cli i18n) - Выберите уникальный идентификатор, в примере я использовал
my-theme
, оборачивайте строки с помощью функции__()
:
__('Something', 'my-theme');
- Повторяйте шаг 2 каждый раз, когда добавляете новую переводимую строку
- (Опционально) Протестируйте перевод локально с помощью Loco Translate или аналогичного инструмента, чтобы убедиться, что все работает как ожидается
- Опубликуйте ваш плагин/тему и переведите её на https://translate.wordpress.org/

Вы можете использовать инструмент POEdit
для перевода вашей темы с нуля или обновления/добавления новых строк в файлы .po/.mo. Вот руководство по использованию инструмента: Перевод_с_Poedit
Существует плагин, который может сделать эту работу за вас: codestyling-localization
ШАГИ:
1. Загрузка текстового домена для темы.
add_action('after_setup_theme', 'my_theme_setup');
function my_theme_setup(){
load_theme_textdomain('mytheme', get_template_directory() . '/languages');
}
2. Найдите сообщения, которые нужно перевести, и обработайте их соответствующей функцией WordPress.
_e('Привет, пользователь','mytheme');
the_content( __('Читать далее','mytheme') );
3. Создание языковых файлов. 3.1 Файл POT содержит список всех переводимых сообщений в нашей теме.
3.2 Файл .po создается, когда мы переводим файл POT для определенной локали.
3.3 Файл .mo — это бинарный файл, который автоматически создается программами для перевода и не является читаемым для человека.
4. Создайте файл POT с помощью инструмента PoEdit
4.1 Откройте Poedit и создайте новый каталог. Заполните информацию о проекте на вкладке "Project info".
4.2 Укажите путь к теме, и программа проанализирует весь текст, который нужно перевести. Вам нужно указать ключевые слова, которые мы использовали в теме: __(
и _e
, чтобы программа могла проанализировать и создать для вас файл POT.
4.3 Теперь добавьте переведенный текст для каждой строки внутри файла POT и создайте файл .po, установив код языка и код страны в качестве имени файла.
4.4 Сгенерируйте файл .mo из него. (При сохранении файла .po Poedit автоматически создаст файл .mo, который является бинарным файлом и не читается человеком.)
4.5 Укажите WordPress включить локализацию и загрузить языковые файлы.
Отредактируйте файл wp-config.php
и измените эту строку: define('WPLANG', 'ru_RU');

Я использую eazypo для создания MO-файлов тем и плагинов WordPress.
Удобное и бесплатное решение. Посетите их сайт, там есть руководство.

этот ответ был дан в 2017 году, и основной вопрос не упоминал требуемую ОС.

Это всё ещё отстаёт на 3 года. Вряд ли активно разрабатывается.
