Особенности перевода WordPress на другие языки

WordPress
4 мин. на чтение

Сегодня пришлось поковыряться в недрах WordPress. Т.к. я сторонник правильной правки кода (т.е. согласно стандарту разработчиков), то перевод темы решил делать неизвестным для меня способом, а именно редактированием *.po и *.mo файлов. В сети много талмутов о том, как совершать перевод тем и плагинов WordPress на другие языки, но сегодня речь конкретно о *.po и *.mo, а вернее о том, как правильно использовать freeware программу для редактирования и создания переводов Poedit и сэкономить 30 минут времени, которые потратил я, чтобы решить вопрос с Poedit и заставить ее работать «как надо».

 

В папке перевода темы или самого WordPress (например language, lang, translate etc.) каждый язык представлен двумя файликами *.po и *.mo, например us_US.po и us-US.mo

Если *.po файлик представляет собой вполне обычный текстовый документ, доступный для редактирования даже блокнотом (хотя это и не очень удобно), то с *.mo вы ничего особо не сделаете, т.к. этот файлик компилируется в виде специального кода и не доступен для редактирования текстовыми средствами.

Для создания и редактирования языков интерфейса WordPress через *.po и *.mo в сети существует классная тула — Poedit. Она разработана что приятно практически для всех известных настольных ОС Unix, Linux, Windows, MacOS. Поклонникам командной строчки известно и другая тула, но я не очень-то помню ее название. Наша же Poedit выглядит так:

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

Так в чем же проблема потраченных 30 минут борьбы с Poedit?

Как оказалось отредактировать просто *.po файл мало, нужно еще скомпилировать *.mo, но вот его Poedit упорно не хотел создавать. Я качал разные версии, выбирал каталоги, но все не помогало. При этом многие пользователи (какой-то видимо особой версии) не испытывали ровно никакой проблемы.

Без компилированного файла *.mo WordPress не применял исправления перевода, которые я внес.

Решение проблемы

Как всегда просто, когда знаешь где. Идем в Файл->Установки и видим там сразу вкладку Редактор. Ставим там галочку, от которой капитан Очевидность будет в шоке. При сохранении автоматически компилировать файл .mo

Если честно я не очень понял, почему эта галочка не активна по умолчанию?! Вуаля, теперь после редактирования вы получите оба требуемых для создания своего перевода файла. О том, что с ними делать можно прочитать в сети, не буду повторяться :)

Игорь Чишкала
Директор по технологиям в SoftForge. Люблю ИТ, пишу технические статьи в этом блоге или для сайта фриланс-биржи Upwork. Кодю на PHP с использованием фреймворков Laravel или Symfony.
Оцените автора
Авторский блог Игоря Чишкалы
Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

  1. summ3r

    Добрый день! Если Вы заинтересованы в локализации web-ПО, ПО для персональных компьютеров, ПО для мобильных устройств либо иного вида программного обеспечения, я рекомендую Вам использовать этот инструмент на базе web: http://poeditor.com/ POEditor является интуитивным, хорошо проработанным инструментом, обладающим рядом полезных свойств, которые помогают организовать процесс управления переводом. Он поддерживает множество популярных форматов файлов и обладает собственным API, что обеспечивает лучшую автоматизацию. Желаю Вам больших успехов в Ваших проектах!

    Ответить