WPNICE - ваш сайт о WordPress

Как и чем перевести тему или плагин WordPress?

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

Если перевод на русский язык самой WordPress, дело давно решенное и не вызывающее лишних вопросов у пользователей, то вот с плагинами и темами ситуация по прежнему животрепещущая. Не смотря на появление довольно значительного количества разработчиков из России и стран бывшего союза, все таки подавляющее количество WP ресурсов приходит с запада. А значит, требуют перевода. И дело тут даже не в том, что «английский знать нужно». Хороший перевод на родной — русский, украинский и т. д. язык, никогда и никому еще не вредил.

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

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

Перевод в коде темы

Не раз уже говорилось о том, что переводить прямо в коде плагина или темы занятие не правильное и неблагодарное, так как все ваши изменения будут потеряны при первом же обновлении. Исключением может служить только уж какая-то совсем уникальная ситуация. Тогда поиск и текстовый редактор вам в руки, но не говорите, что вас не предупреждали 🙂

.pot, .po и .mo

Для того, что ваш перевод никак не зависел от изменений в коде, разработчики приложений для WP уже давно используют технологию GNU gettext для создания отдельных файлов для перевода в форматах типа .pot, .po и .mo. Собственно, первый вариант это пустая «болванка» для перевода, второй вариант — уже готовый файл перевода на нужном языке, а третий — уже скомпилированный вариант для корректной работы с WordPress.

Как определить, готовы ли ваша тема или плагин к переводу? Очень просто — в корневой директории должна присутствовать папка — languages. Иногда просто — lang. Изредка встречаются и другие названия папок. Но суть в подготовленном к переводу файле .pot который должен находится в этой папке. Если какой то язык уже есть, будет присутствовать и файлик с расширением .po Например, — en_US.po или — ru_RU.po

Перейдем к инструментам которые помогут вам сделать свой перевод.

Редактор POEDIT

Простой и очень популярный, специализированный редактор для переводов. Предназначен для редактирования каталогов локализации gettext. POEDIT не WP плагин, а независимая программа, которую вам придется скачать и установит на свой компьютер. Имеет простой, трехоконный интерфейс позволяющий легко переводить нужные строки. В отдельном окошке можно оставлять комментарии.

Для начала работы с редактором вам нужно либо открыть уже готовый файл — .PO, либо создать новый на основе любого готового PO файла или POT шаблона. При создании нового PO файла выберите нужный язык. Как правило, программа сама точно определяет и подставляет нужный. Во время первого сохранения редактор предложит сохранить файл в виде — ru_RU.po Имейте ввиду, изменять произвольно конечный вид файла не стоит, так как перевод может стать не читаемым.

Далее вам нужно будет только выбрать строку для перевода и ввести в окне ниже, перевод собственный. Аналогично происходит работа с множественными вариантами перевода для одного слова. В недалеком прошлом редактор имел проблемы в этом отношении, но сейчас уже все работает как часы.

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

Кроме бесплатной версии существует версия ПРО, в которой добавлена возможность создавать новый перевод просто выбрав папку с темой или плагином. Кроме того, в ПРО версии есть детальная статистика текущего перевода, что в некоторых случаях очень удобно. Ну и конечно, гарантированная поддержка автора. Всем кто занимается частыми переводами, настоятельно рекомендую приобрести именно расширенную версию. Стоит она не дорого.

Скачать POEDIT.

Теперь обратим внимание на специальные WP плагины использующие те же принципы, но позволяющие осуществлять перевод прямо в админке вашей темы.

Плагин CodeStyling Localization (CSL)

Самый популярный, бесплатный плагин для локализации. Имеет достаточно простой интерфейс и все необходимое для быстрого и удобного перевода. Выбираем нужную тему или плагин и далее, переводим необходимые поля по аналогии с POEDIT. Если нужного перевода еще нет, то создаем новый, предварительно выбрав из готового списка  языков. CodeStyling Localization сам по себе, уже переведен на русский и имеет удобный поиск по переводу.

К сожалению, плагин не обновлялся уже более года и неизвестно, будет ли обновляться в будущем. Скорее всего, уже не будет, судя по последним записям в блоге автора. В целом, не смотря на некоторые проблемы со множественными числами и скриптами типа Script Guard в некоторых популярных плагинах, вполне еще может быть использован для перевода.

Официальный сайт автора.
Скачать плагин с этого сайта (используйте на свой страх и риск).

Плагин Loco Translate

Относительно новый плагин имеющий редактор в стиле POEDIT. Интерфейс действительно простой и понятный. Те кто уже пользовался ранее CSL или POEDIT, разберутся без труда. Да и для новичков, тут ничего сложного нет. В меню настроек плагина можно выбрать тему или плагин из тех, что установлены на сайте и сразу приступать к переводу. Умеет создавать резервные копии PO файлов и позволяет при желании подключить стороннюю программу для компиляции MO файлов.

Базовые настройки Loco Translate очень простые и трогать там ничего не нужно, в большинстве случаев. Сконцентрируйтесь на самих переводах. Если в теме/плагине не предусмотрены файлы локализации, то плагин предлагает создать новый POT файл и делать перевод затем на его основе. Это не всегда работает корректно, но в целом, часто помогает. Сохранение перевода возможно как в самой директории плагина, так и в глобальных переводах для WordPress.

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

Loco Translate — в целом, очень не плохой и удобный плагин, который вполне может заменить пресловутый CSL. Всем любителям переводить из админки рекомендуется.

Официальная страница плагина.

Плагин Easy Translation Manager for WordPress

Премиум плагин от известной конторы разрабов. Уже давно продается на codecanyon.net Имеет запутанный и как мне показалось, слишком избыточный интерфейс. Переводит при этом, весьма слабо и неохотно, а многое просто не находит даже если для перевода есть все условия и файлы. Яркий пример того, как премиум плагин может быть в разы хуже бесплатных аналогов.

Правда, этот плагин кроме обычного перевода тем и плагинов может сделать вам и некое подобие мультиязычного сайта. То есть переводить, элементы интерфейсов сайта и сам контент. При желании, можно вывести значок переключения и таким образом переключаться между языками. Однако, добиться хороших результатов мне в этом деле так и не удалось. В общем, если вам не жаль 28 «зеленых», можете попробовать сами.

Официальная страница плагина.

Плагин ConveyThis Translate

Реиновация плагина, запущенного в 2008 году. Предоставляет возможность автоматического перевода страниц сайта одним нажатием.

Не требует длительной настройки. Для активации достаточно зарегистрироваться на сайте плагина, получить API Key и указать в настройках необходимые языки из 100 предложенных.

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

При необходимости, перевод любой страницы можно отредактировать в личном кабинете.

Официальная страница плагина и в репозитории WordPress

GlotPress

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

Устанавливается эта система, конечно посложнее чем обычный плагин. Да и скачать последнюю версию можно лишь используя SVN вот отсюда. GlotPress используется рядом крупных плагинов например, таких как Simple Press, BuddyPress и некоторыми прочими «гигантами WP». Замечу, что если плагин использует собственный перевод от GlotPress, то переводить с помощью вышеописанных плагинов или POEDIT особого смысла нет, так как исходник перевода всегда будет заменен на тот, что использует система. Прежде чем переводить, что-то подобное самостоятельно, узнайте не ведется ли уже авторами перевод на GlotPress.

Надеюсь, вы получили общее представление о том как и чем перевести тему или плагин WordPress. Если вам, уважаемые читатели, известны еще какие-то плагины и программы способные помочь пользователям WordPress c переводом, пожалуйста укажите их в своих комментариях.

Как найти тему или плагин готовую к переводу?

Готовые к переводу бесплатные темы можно отсортировать прямо в админке по фильтру — «готова к переводу».

Премиум плагины и темы как правило имеют в описании что-то типа — Translation Ready

Можно ли отключить плагин локализации после перевода?

Можно и нужно

Как перенести переведенные файлы с компа на свой сайт?

С помощью FTP доступа к серверу и файловых менеджеров типа FileZilla или Total Commander. Можно еще использовать внутренний менеджер файлов вашего хостинга, если он есть разумеется.

Что делать если моя тема или плагин не готовы к переводу?

1. Озаботиться изучением основ локализации и создать POT файл самому. 2. Перевести тексты с помощью текстового редактора в коде (о недостатках этого метода я писал в начале). 3. Дождаться перевода от автора.

Так же рекомендую к прочтению по этой теме:

Как сделать сайт мультиязычным?
Детальное описание двух плагинов для локализации.
Редактор POEDIT — переводим темы и плагины