Контакты

Как переводить темы для WordPress. Переводы в WordPress (локализация) Употребление форм множественного числа

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

  • Что такое файл.po ?
  • Какое программное обеспечение мне нужно открыть файл.po ?
  • Как файл.po быть открыты, отредактированы или напечатано?
  • Как конвертировать.po файлов в другой формат?

Мы надеемся, что вы найдете на этой странице полезный и ценный ресурс!

1 расширений и 0 псевдонимы, найденных в базе данных

✅ GNU Gettext Portable Object

Описание (на английском языке):
PO file is a GNU Gettext Portable Object. GNU gettext is the GNU internationalization and localization (i18n) library. It is commonly used for writing multilingual programs.

MIME-тип: application/octet-stream

Другие типы файлов могут также использовать расширение файла .po .

🚫 Расширение файла.po часто дается неправильно!

По данным Поиск на нашем сайте эти опечатки были наиболее распространенными в прошлом году:

lo , pp , pk , p0 , oo , pl , pi , op

Это возможно, что расширение имени файла указано неправильно?

Мы нашли следующие аналогичные расширений файлов в нашей базе данных:

🔴 Не удается открыть файл.po?

Если дважды щелкнуть файл, чтобы открыть его, Windows проверяет расширение имени файла. Если Windows распознает расширение имени файла, файл открывается в программе, которая связана с этим расширением имени файла. Когда Windows не распознает расширение имени файла, появляется следующее сообщение:

Windows не удается открыть этот файл:

Пример.po

Чтобы открыть этот файл, Windows необходимо знать, какую программу вы хотите использовать для его открытия...

Если вы не знаете как настроить сопоставления файлов .po , проверьте .

🔴 Можно ли изменить расширение файлов?

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

Если у вас есть полезная информация о расширение файла .po , !

🔴 Оцените нашу страницу PO

Пожалуйста, помогите нам, оценив нашу страницу PO в 5-звездочной рейтинговой системе ниже. (1 звезда плохая, 5 звезд отличная)

Что это за файл - PO?

PO - это текстовый файл разработчика, в котором хранятся различные данные в зависимости от используемой среды разработки или операционной системы. PO-файлы используются для удаленных вызовов процедур, их легко поддерживать и адаптировать к потребностям пользователя.

PO-файлы могут содержать полезную информацию при разработке программного обеспечения, например, на Java. PO как ANS объектный файл может рассматриваться как переменная, функция или метод, функция, очень полезная в распределенном программировании. PO-файлы можно редактировать с помощью любого текстового редактора.

Программа(ы), умеющие открыть файл .PO

Windows
Mac OS
Linux

Как открыть PO файлы

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

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

В дальнейшей части этой страницы Вы найдете другие возможные причины, вызывающие проблемы с файлами PO.

Возможные проблемы с файлами в формате PO

Отсутствие возможности открытия и работы с файлом PO, совсем не должен значить, что мы не имеем установленного на своем компьютере соответствующего программного обеспечения. Могут выступать другие проблемы, которые также блокируют нам возможность работы с файлом Disk Image Format. Ниже находится список возможных проблем.

  • Повреждение открываемого файла PO.
  • Ошибочные связи файла PO в записях реестра.
  • Случайное удаление описания расширения PO из реестра Windows
  • Некомплектная установка аппликации, обслуживающей формат PO
  • Открываемый файл PO инфицирован нежелательным, вредным программным обеспечением.
  • На компьютере слишком мало места, чтобы открыть файл PO.
  • Драйверы оборудования, используемого компьютером для открытия файла PO неактуальные.

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

Unix Static Object Code Library Format
.a2w Alice Program World Format
.actx DS Game Maker Action Description Format
.ada ADA Language Source Code Format
.addin Microsoft Visual Studio Addin Format
.ads Ada Package Specification
Notatnik позволит нам увидеть часть данных, закодированных в файле. Этот метод позволяет просмотреть содержимое многих файлов, однако не в такой форме, как программа, предназначенная для их обслуживания.

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

Не переводите исходный код темы

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

Для локализации WordPress использует технологию GNU gettext, которая говорит о том, что исходный код программы должен быть написан на английском языке. Это позволяет переводить продукт с английского языка на любой другой язык, а сам перевод распространять в специальном формате, отдельным от исходного кода.

Такой подход позволяет переводить темы для WordPress, не изменяя исходный код самих тем. При этом, после выхода обновления к той или иной теме, ваш перевод не потеряется.

Готова ли тема к переводу

К сожалению не все существующие темы для WordPress можно перевести «правильным» путём. Это зависит от того, подготовил ли разработчик свою тему к переводу. Вопрос подготовки темы к переводу заслуживает отдельной стати.

Найти тему, готовую к переводу, достаточно легко. В официальной директории тем на WordPress.org есть для этого специальная метка translation-ready , которая означает, что разработчик подготовил тему к переводу, и вы можете перевести её на русский язык, не заходя в исходный код программы. Просмотреть все темы в директории с меткой translation-ready можно , на сегодняшний день их порядка 500.

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

Файлы.po и.mo

После того как вы скачали тему для перевода, найдите в ней директорию languages. В ней содержатся файлы перевода темы на различные языки, а так же шаблон для перевода на любой другой язык. Название файла соответствует названию локали конкретного языка. Для русского языка, это ru_RU.

Файлы перевода имеют расширение.po и.mo. Файлы.po содержат переведённые строки в текстовом формате. С этими файлами работает переводчик темы. Файлы.mo это те же строки, но в скомпилированом варианте. С этими файлами работает ядро WordPress для отображения перевода.

После редактирования перевода в файле.po, его нужно скомпилировать в файл.mo, чтобы изменения вступили в силу. Программа Poedit делает это автоматически.

Перевод темы с помощью Poedit

После запуска программы для создания нового перевода следует Создать каталог из POT-файла через пункт меню Файл. Выберите файл.pot (или.po) из директории languages в вашей теме. Poedit попросит вас заполнить небольшую форму о переводе, после чего предложит вам сохранить ваш новый каталог. Сохраняйте его в той же директории languages с названием локали, например ru_RU.po.

Для редактирования существующего перевода, достаточно открыть соответствующий файл.po.

Работать с программой Poedit достаточно легко — исходный текст слева, перевод справа. Для редактирования перевода щёлкните на соответствующую строку и введите новый перевод. При сохранении, Poedit автоматически скомпилирует ваш перевод и создаст соответсвующий файл.mo.

Установить перевод

После того как вы будете довольны вашим переводом, не забудьте его сохранить. Затем вы можете загрузить вашу тему с переводом на ваш сайт и активировать её, как любую другую тему WordPress. Если тема уже установлена на вашем сайте, то достаточно загрузить в её директорию languages новые файлы переода ru_RU.po и ru_RU.mo, например через FTP.

Если WordPress установлен на русском языке, то вы сразу же увидите изменения. Если же WordPress настроен на английский язык, то следует изменить локаль в файле wp-config.php. Найдите в этом файле строку определяющая константу WPLANG и измените её:

Define("WPLANG", "ru_RU");

После этого, тема на вашем сайте будет отображаться на русском языке. Но не останавливайтесь на этом!

Внесите свой вклад

Если вы перевели тему для WordPress на русский язык, вы можете связаться с автором этой темы и отправить ему ваши файлы перевода.po и.mo. Автор может включить новый перевод при выпуске следующего обновления к своей теме, и другие пользователи WordPress смогут наслаждаться темой на русском языке.

Перевод тем, плагинов и самого ядра — является одним из многочисленных способов внести свой вклад в развитие проекта WordPress.

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

Если наша система не справляется с расширением.PO и подвели все автоматические и полуавтоматические методы обучения его этому искусству, остается ручное редактирование реестра Windows. Этот реестр хранит всю информацию, касающуюся рабоы нашей операционной системы, в том числе соединения расширений файлов с программами для их обслуживания. Команда REGEDIT вписанная в окне „поиск программ и файлов” или „запустить в случае старших версий операционной системы, предоставляет нам доступ к реестру нашей операционной системы. Все операции, проведенные в реестре (даже не очень сложные, касающееся расширения файла.PO) имеют значительное влияние на работу нашей системы, поэтому прежде чем проводить какие-либо модификации следует убедится, что сделана копия актуального реестра. Интересующий нас раздел - это ключ HKEY_CLASSES_ROOT . Следующая инструкция показывает, шаг за шагом, как модифицировать реестр, а конкретно запись в реестре, содержащую информацию о файле.PO.

Шаг за шагом

  • Нажмите кнопку “start”
  • В окне „найти программы и файлы” (в старших версиях системы Windows это окно „Запустить”) впишите команду „regedit” а затем утвердите операцию клавишей „ENTER”. Эта операция запустит системный редактор реестра. Этот инструмент позволит не только просмотреть существующие записи, но также провести их модификацию, добавление или удаление вручную. В связи с тем, что реестр системы Windows ключевой для ее работы, все операции, проводящиеся на ней, следует выполнять рассудительно и сознательно. Неосторожное устранение или модификация несоответственного ключа может необратимо повредить операционную систему.
  • С помощью комбинации клавишей ctr+F или меню Редактирование и опции „Найти” найдите интересующее вас расширение.PO, вписав его в окне поисковика. Утвердите, нажав OK или с помощью клавиши ENTER.
  • Запасная копия. Чрезвычайно важным является создание запасной копии реестра, прежде чем совершить в нем какие-либо изменения. Каждое изменение имеет влияние на действие нашего компьютера. В крайних случаях ошибочная модификация реестра может привести к невозможности повторного запуска системы.
  • Интересующее Вас значение, касающееся расширения, можно вручную редактировать изменяя ключи, приписанные к найденному расширению.PO. В этом месте Вы можете также самостоятельно создать нужную запись с расширением а.PO если такое отсутствует в реестре. Все доступные варианты находятся в подручном меню (правая кнопка мышки) или в меню "Редактирование" после размещения курсора в соответствующем месте на экране.
  • После окончания редактирования записи, касающейся расширения.PO закройте системный реестр. Введенные изменения войдут в жизнь после повторного запуска операционной системы.

Несмотря на то, что мировая культура в лице Википедии и Пола Маккартни уверяет нас, что Mary had a little lamb , на территории одной восьмой части суши продолжают считать, что на самом деле «У Мэри был ягнёнок». Кто же на самом деле был у Мэри, и как записать это на разных языках мира? Попробуем выяснить это (а также понять, что думают по этому поводу японцы) вместе с нашим любимым Python-ом и встроенным в него модулем поддержки многоязычных переводов gettext.

Скомпилированный файл перевода: .mo

Итак, строки в нашей программе мы перевели. Зря, кстати. gettext направлен исключительно на перевод законченных готовых предложений, и перевод отдельных слов и шаблонов предложений в нём делать опасно… (например, gettext совершенно не поддерживает падежи и рода и кое-как поддерживает разве что различение единственного и множественного числа; так что, чтобы подставить вместо Мэри «Таню» или «Свету», придётся учитывать падеж для каждого возможного употребления исходного имени.) Ну да ладно - в нашем случае это не принципиально. Сейчас у нас задача в другом: подготовить файл перевода к использованию.

Использовать исходный текстовый файл было бы неудобно по соображениям производительности (для программ, в которых много переводимого текста), поэтому система gettext использует скомпилированные в специальный формат файлы. Для компиляции мы можем воспользоваться либо тулой msgfmt из комплекта gettext, либо msgfmt.py из комплекта Python (в дебианоподобных дистрибутивах она входит в состав пакета python2.5-examples). Воспользуемся второй:

Msgfmt.py mary.po

Ага, видим файл mary.mo. В отличие от mary.po он уже явно не предназначен для ручного редактирования.

Структура каталогов и запуск программы

Если бы мы подготавливали программу к инсталляции в служебные директории, то мы бы создали примерно такую иерархию (в случае Debian linux): системный каталог /usr/share/locale, в нём подкаталоги для разных языков - ru, en и т.п.; в них - по каталогу LC_MESSAGES, а там уже - файл наподобие mary.mo (с максимально уникальным именем, чтобы не пересечься с другими программами). Но в нашем учебном случае мы просто сделаем подкаталог locale в нашем каталоге, создадим в нём подкаталоги ru/LC_MESSAGES, а в последний уже положим mary.mo.

Теперь наконец добавим в нашу программу поддержку gettext:

#!/usr/bin/python
import gettext

Gettext.install("mary", "./locale", unicode=True)

Name = _("Mary")
animal = _("lamb")

Print _("%s had a little %s") % (name, animal)

Что изменилось? Мы проимпортировали модуль gettext (ну, это очевидно). А ещё мы проинсталлировали в глобальное пространство программы функцию _(), которая для перевода строк в подкаталоге./locale (второй аргумент) найдёт каталог с нашей текущей локалью (тот самый подкаталог ru), а в его подкаталоге LC_MESSAGES будет искать юникодный (третий аргумент) файл mary.mo перевода программы mary (первый аргумент).

Что имеется в виду под словом «проинсталлировали»? А то, что, после этого действия, мы можем импортировать другие модули нашей программы, и функция _() в них будет уже определена.

Запускаем нашу программу…

1:/tmp/mary> ./mary.py
У Мэри был маленький ягнёнок

Ага. Как-то так.

Бонус

Согласно Google Translate, .po-файл для японского языка будет выглядеть примерно так:
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"

Msgid "Mary"
msgstr "メアリー"

Msgid "lamb"
msgstr "子羊"

Msgid "%s had a little %s"
msgstr "%sの%sいた"

И для нормальной поддержки японского языка (помимо русского) нам придётся поменять последнюю строку кода на
print (_("%s had a little %s") % (name, animal)).encode("UTF-8")

Понравилась статья? Поделитесь ей