Русификация Wordpress или зачем нужны файлы .mo и po, часть 1. Локализация wordpress
Как перевести Тему или плагин wordpress - Локализация
Доброго времени суток.
Сейчас в сети можно много всего интересного скачать для своего сайта, но из этого много, большее количество на английском языке и кто не особо дружит с ним просто проходит мимо таких вещей.
Например вам необходим плагин защиты или переноса данных, а он на английском и разбираться, а он и так пестрит настройками аж в глазах рябит, да и ещё на английском, по просту нет ни сил, ни времени. А вы в школе учили африканский (т.е. английский — прослушал курс). Поиски русской версии ничего не дали. Вы либо плюнули простой доисторической слюной, либо идёте к фрилансу уже прикидывая сколько прийдётся выложиться, а финансы в это время поют романсы.
Вот для этого случая и написан этот пост.
В каждой теме или плагине wordpress есть файлы локализации, почти в каждой… Некоторые разработчики не удосужились потрудится и создать такие файлы, но в 90% случаев файлы есть.
Находятся файлы локализации обычно в папках
- lang
- languages
- local
Файлы могут иметь разное название, но обязательное расширение файлов — .po и .mo
Например
- js_composer-bg_BG.mo
- js_composer-bg_BG.po
или просто указание локализации (языка)
- bg_BG.mo
- bg_BG.po
Файл .mo это скомпилированный файл и он предназначен для роботов браузера.
Нам нужен файл .po он и называется Файл перевода PO
Этот файл можно и нужно редактировать. для редакции существует программа Poeditor
Скачайте её здесь Скачть программу
После установки откройте программу
Вы можете нажать нижний банер Перевод темы или модуля WordPress, программа автоматически настроит перевод, запросит папку темы или плагина, где лежат файлы перевода и выдаст на гора строки для перевода
Я же обычно кликаю по второму баннеру Создать новый перевод, в первый раз вы пропишите перевод русский ru_RU и программа в следующие редакции уже будет сразу открывать файлы .po
Программа сразу видит и открывает по умолчанию файлы POT
Если нет таких файлов, а такое бывает, то нужно переключиться на обнаружение файлов .po ,
Выбираете файлы .po в папке lang (languages, locale).
Либо default.po, либо британский английский например — js_composer-en_GB.po такие файлы содержат полный перевод, а для арабских стран ar_AR.po — 70% строк перевода. Если возьмёте такой файл, то часть вашей админки сайта или плагина (модуля) будет на английском.
Открываем файл и прописываем строчки перевода напротив оригинала. Заполнив всё сохраняем файл как и редактируемый, под тем же названием с укзанием направления перевода, например:
Редактировался файл js_composer-en_GB.po сохраняем js_composer-ru_RU.po
Если брался файл default.po то сохранять надо под названием файла POT , например:
но с расширением -ru_RU.po, будет вот так wordpress-seo-ru_RU.po
Если же перевод не отобразился в модуле (это редко, но бывает в плагине не появился перевод) надо открыть главный файл плагина в редакторе notepad++ — например:
wp-seo-premium.php
и посмотреть как прописан путь к локализации , на скрине мы видим, что к папке languages прописан путь wordpress-seo, так и сохраняем с добавлением направления перевода -ru_RU.po , программа при сохранении выдаёт 2 файла .po и .mo оба файла и отвечают за перевод .
После таких процедур перевод появится в вашем плагине или теме.
Ещё один нюанс, есть только скомпилированные файлы .mo — файлы .po отсутствуют, в таком случаем переходим на конвертер .mo 2 .po
грузим апельсины бочками (файл .mo) , конвертируем и скачиваем себе на комп файл .po, затем редактируем программой Poedit
В случае если файлов перевода нет, а такое тоже бывает, то переводить нужно (а нужно ли?) во всех PHP файлах , это морока ещё та… да и при обновлении темы или модуля, всё необходимо повторить сначала.
www.blogedward.ru
Плагины для локализации тем и плагинов wordpress | WPNICE
О том, как переводить wordpress темы в сети, уже написано не мало. В первую очередь, это касается ручных переводов. То есть, вооружившись текстовым редактором, вы должны найти все нужные вам для перевода слова в коде и методично, шаг за шагом, перевести их на русский.
Сегодня разговор пойдет о двух плагинах, значительно облегчающих эту задачу. То есть переводить придется все равно вам, но сделать это будет уже гораздо удобнее.
Один плагин совершенно бесплатный, это — CodeStyling Localization. А вот второй, самый что ни на есть платный — Easy Translation Manager.
В конце статьи подведу небольшой сравнительный итог обоих плагинов.
CodeStyling Localization (CSL)
Устанавливается стандартным способом. После установки, в меню Инструменты, появляется новый раздел – локализация. Кликаем на нем и попадаем на страницу плагина – Управление языковыми файлами.
Перед вами меню с шестью закладками:
Все файлы – плагин показывает все, что он сможет перевести.
WordPress – собственно перевод самой WordPress. Не особо актуально, ибо у большинства стоит уже русский WP.
Плагины – выводит список плагинов, которые можно перевести
Темы – выводит список всех тем для перевода
Compatibility – показывает, где могут возникнуть проблемы с переводом
Security Risk – показывает, где могут возникнуть проблемы с безопасностью.
Порядок работы с переводом примерно такой:
Выбираем в списке всех доступных (если у вас их установлено несколько) тему, нужную нам для локализации. Если в графе Языки ничего нет, то жмем Добавить новый язык. Находим и выбираем в списке русский язык. После этого он появится в графе языков. Нажимаем Сканировать и даем плагину просканировать тему на предмет необходимых для перевода слов. Затем нажимаем Редактировать.
Открывается список всех доступных для локализации слов. Ну и далее по очереди или выборочно переводим нужные слова нажимая напротив каждого Редактировать. Появится всплывающее окно состоящее из двух частей. Где наверху оригинал, а внизу можно вписать свой перевод. Нажимаем Сохранить или Сохранить и перейти к следующему/предыдущему.
Для того, что бы все ваши изменения вступили в силу нажимаем кнопку Генерировать МО – файл.
Вот собственно и вся процедура. Отдельно, при желании можно выбрать в выпадающем списке варианты Textdomain – это как раз и есть подготовленные для перевода части кода. Там, например, могут быть отдельно файлы, относящиеся к панели управления темой, комментариям и прочие. Можно использовать поиск, как для оригинальных слов, так и для уже переведенных.
Все то же самое применяется и в отношении плагинов.
Easy Translation Manager (ETM)
В принципе этот платный плагин работает так же как и его бесплатный аналог, но в отличии от последнего имеет более продвинутое и удобное управление, а так же некоторые дополнительные функции. Рассмотрим подробнее.
После установки плагина в «админке» появляется новое меню ETM Settings, состоящее из семи разделов.
Get Started: Краткое руководство о том, как начать работу с плагинов. Авторы рекомендуют выполнить три простых шага – Выбрать языки для перевода – выбрать доступ к меню выбора языков – начать перевод тем, плагинов и остального.
Plugin Translation — Перевод плагинов. Тут будет список плагинов доступных для перевода и возможность их перевести. Сам процесс перевода практически аналогичен тому, что я описывал для бесплатного плагина , поэтому не вижу особого смысла повторятся.
Theme Translation — Перевод тем. Так же как предыдущий.
Pages Translation — Перевод отдельных страниц сайта
Post Translation — Перевод всего, что связано с постами, тегами и рубриками
Menu Translation — Перевод основного меню темы
Options — Набор основных опций плагина — General Settings, Manage availability of Items, List Configuration, Design and Layout, Language, Support for other plugins, License. С виду поражает количеством настроек, но на самом деле из важных только – выбор нужных языков. Все остальное просто настройка внешнего вида самого плагина в админке, скрытие или видимость отдельных элементов и т д.
Как видим, ETM имеет гораздо больше настроек, чем его бесплатный конкурент, но большинство из них можно и нужно просто оставить как есть — без изменений.
Итоги
В результате небольшого теста на нескольких бесплатных и платных темах, удалось выяснить, что платному плагину ETM, удалось обойти своего конкурента только в паре плагинов, которые первый, не нашел вообще. В темах же, бесплатный CSL, обошел своего дорогого собрата по количеству найденных для перевода слов и даже тем.
В общем и целом – оба плагина весьма придирчивы и напрочь отказались видеть плагины и темы, где авторами заранее не приготовлены файлы для локализации. То есть, если в скачанной теме или плагине нет папки – languages, то и перевода не будет. Кстати, наличие такой папки в бесплатной теме — лишнее подтверждение того, насколько серьезно автор подошел к созданию своего шаблона.
Страницы плагинов — CodeStyling Localization Easy Translation Manager
Рекомендую почитать так же — Как и чем перевести тему и плагин?
wpnice.ru
Как русифицировать плагин WordPress
От автора: приветствую вас друзья в статье, которая, уверен, будет полезна не только новичкам, но и людям, уже давно работающим с WordPress. В статье мы узнаем, как русифицировать плагин WordPress. При этом рассмотрим несколько способов русификации плагинов WordPress. Приступим?
Итак, начнем с того, что есть несколько способов русификации плагинов. Самый простой и очевидный — это залезть в код плагина в поисках необходимых слов и фраз, требующих перевода, найти их и просто заменить на переведенные слова и фразы. Это действительно простейший и очевидный вариант, который будет работать всегда. Но этот вариант не всегда является правильным. Почему? Узнаем далее. Ну а пока что давайте попробуем воспользоваться им.
В качестве «жертвы» я использую плагин SyntaxHighlighter Evolved. Для него нет перевода на русский язык, а это то, что нам и нужно. Итак, находим плагин:
Устанавливаем и активируем его. Идем на страницу настроек плагина и видим все настройки на английском:
Хотите быстро научиться создавать сайты и блоги на WordPress с уникальным дизайном?
Получите самую полную в Рунете бесплатную систему обучения создания сайтов на WordPress
Узнать подробнееЧтобы использовать первый вариант — перевести плагин WordPress непосредственно копаясь в коде — достаточно найти файл (или файлы), в котором и выводятся данные настройки. Сделать это можно воспользовавшись текстовым редактором, например SublimeText. В этом редакторе есть очень полезная функция — поиск по файлам. Для ее использования достаточно зайти в меню Find — Find in Files и ввести слово или фразу для поиска, а также выбрать папку, в файлах которой мы хотим произвести поиск.
Нажав кнопку Find мы запустим поиск, в результатах которого увидим файлы, где встречается искомая фраза. Файл, который нам подходит — это главный файл плагина — syntaxhighlighter.php. Полностью плагин я переводить не буду, давайте в качестве примера переведем заголовок страницы настроек (SyntaxHighlighter Settings) и название первой настройки (Highlighter Version). В коде файла это будет строка 1005 и 1014.
Заменим эти фразы переведенными аналогами: Установки SyntaxHighlighter и Версия Highlighter. Сохраним файл и проверим изменения.
Как видим, все получилось. Обратите внимание, файл должен сохраняться в кодировке UTF-8 без BOM (в редакторе ST это просто UTF-8), в противном случае возможны проблемы с кодировкой на странице. Собственно, вот и вся суть первого варианта русификации плагинов WordPress. В целом, ничего сложного. Однако этот способ не всегда является правильным. Давайте посмотрим почему.
Программа Poedit для создания файлов перевода
Часто разработчики качественных плагинов предлагают различные локализации своих детищ, то есть перевод их на различные языки. Это удобно, поскольку позволяет использовать плагин для различных групп пользователей. Как работает локализация в WordPress? Работает она с помощью специальных языковых файлов, это файлы с расширениями .po и .mo. Работать с этими файлами позволяет программа Poedit.
Почему же просто не русифицировать плагин первым способом, спросите вы? Зачем какие-то языковые файлы? Ответ прост: если мы залезем в код плагина и внесем изменения в него, заменяя английские слова русскими аналогами, то все будет работать, в этом мы уже убедились. Но все будет работать ровно до очередного обновления плагина… Ведь обновление плагина может предполагать замену файла, который мы правили, новой версией. В этом случае нам придется вновь лезть в код плагина и производить уже проделанную ранее работу. В случае использования файлов перевода мы зачастую избавляемся от повторной работы.
Конечно, второй вариант — с файлами .po и .mo — подойдет только в том случае, когда автор плагина предусмотрел возможность его перевода. В случае с выбранным нами плагином это так. В нем есть папка localization, в которой уже находится несколько файлов перевода. Русской локализации (русификации) среди них нет и это предоставляет нам шанс создать такой файл и научиться еще одному способу перевода плагинов WordPress на русский.
Хотите быстро научиться создавать сайты и блоги на WordPress с уникальным дизайном?
Получите самую полную в Рунете бесплатную систему обучения создания сайтов на WordPress
Узнать подробнееИтак, скачиваем и устанавливаем программу Poedit. Запускаем ее и в стартовом окне выбираем второй из предложенных вариантов — создание перевода на основе существующего.
Выберем любой существующий файл .po, который будет взят за основу, например, я возьму файл украинской локализации (uk).
Далее из предложенного выпадающего списка выбираем нужный нам, поскольку мы русифицируем плагин — это будет русский язык. Ну а далее просто переводим найденные фразы.
Опять-таки, я не буду полностью русифицировать плагин, а в качестве примера просто переведу название первой настройки блока Defaults — это Miscellaneous (Разное), а также первую ее настройку — Display line numbers (Показывать номера строк).
Остается сохранить новый файл локализации. Обратите внимание, программа Вам уже предложит название, которое говорит о языке — ru_RU. Не изменяйте его, а просто дополните — syntaxhighlighter-ru_RU.po.
После сохранения в папке появится два новых файла.
Проверим, появились ли изменения в админке плагина, они должны быть.
Собственно, второй способ русификации плагинов WordPress мы рассмотрели. Есть еще один вариант, позволяющий перевести плагин WordPress. Для этого мы можем воспользоваться специальными плагинами перевода. Например, это может быть плагин Codestyling Localization. В рамках данной статьи мы не будем подробно останавливаться на последнем варианте, но, если это будет вам интересно, тогда дайте мне знать в комментариях и я напишу такую статью или даже запишу видео по работе с подобными плагинами.
Ну а на этом я с вами прощаюсь. Напоминаю, что если вы хотите научиться писать собственные плагины, тогда в этом вам поможет наш курс. Удачи!
Хотите быстро научиться создавать сайты и блоги на WordPress с уникальным дизайном?
Получите самую полную в Рунете бесплатную систему обучения создания сайтов на WordPress
Узнать подробнееХотите быстро научиться создавать сайты и блоги на WordPress с уникальным дизайном?
Получите самую полную в Рунете бесплатную систему обучения создания сайтов на WordPress “Уникальный сайт с нуля”
Получитьwebformyself.com
Руссификация шаблона WordPress с помощью плагина Codestyling localization
Ранее мы рассмотрели способ перевода темы WordPress на русский язык с помощью PoEdit. Но есть и более удобный метод перевода, используя плагин Codestyling localization. Он позволяет осуществлять перевод прямо из-под админки, без применения внешнего редактора. Скачиваем, устанавливаем, активируем плагин. Заходим в Консоль-Инструменты-Локализация, выбираем вкладку Темы.В появившемся окне, выбираем тему, которую необходимо перевести на другой язык, жмем Добавить новый язык.В новом окошке, прокруткой, находим Русский язык, выбираем его и жмем создать po-файл.В результате видим, у нас появился новый язык — Русский, кликаем Сканировать.В новом окне, опять нажимаем сканировать, после окончания сканирования, жмем завершить.После этого выбираем редактировать и видим такую картину, в левой колонке список фраз темы на английском языке, которые мы будем последовательно переводить на русский язык. Для этого жмем кнопку Редактировать, расположенную напротив фразы. По завершению перевода, обязательно генерировать mo-файл. Проверяем странички нашего блога и видим, что тема переведена на русский язык. Если, где обнаружим ошибку или не переведенные слова, то процедуру нужно повторить повторно, для того, чтобы быстро найти нужную фразу, удобно пользоваться формой поиска.Плагин Codestyling localization для скачивания
Codestyling-localization (1.1 MiB, 2770 downloads)Похожие записи:
wpnovice.ru
WordPress L10n: как сделать локализацию плагина
В первой части серии статей о WordPress плагинах i18n and l10n мы рассказали о том, как локализовать плагин для WordPress.Вторая (и заключительная) часть представляет собой руководство к действиям по подготовке плагина к переводу, подобное тому, как было с локализацией и переводом плагина на новый язык.
Процесс подготовки плагина к переводу довольно прямолинеен. Во-первых, вам необходимо сгенерировать .pot файл. Этот файл используется для осуществления локализации. .pot-файл содержит оригинальные строчки текста (на английском языке) вашего плагина.
Вот пример содержимого файла .pot-файла:
#: plugin-name.php:123 msgid "Welcome to SitePoint" msgstr ""Переводчик, найдя вхождение строки Welcome to SitePoint (в строке 123 вашего плагина) на немецком языке, добавит его в файл:
#: plugin-name.php:123 msgid "Welcome to SitePoint" msgstr "Willkommen auf SitePoint"Генерация POT файла
Как упоминалось ранее, POT-файл необходим для осуществления локализации программой – переводчиком.Обратите внимание: перед генерацией POT-файла, убедитесь, что вы подготовили плагин для мультиязыкового использования.
Есть два варианта генерации POT – файла вашего плагина.
Репозиторий плагинов для администраторов
На странице официального репозитория плагинов WordPress есть утилита для генерации POT файлов, которая находится на странице Admin каждого плагина.
Для доступа к странице Admin, авторизуйтесь в репозитории и нажмите зеленую кнопку Admin, расположенную в сайдбаре:
Следуйте краткой инструкции, изложенной ниже, чтобы научится легко генерировать POT файлы, используя инструмент администратора.
- Нажмите Continue в секции Generate POT file:
- Затем нажмите на Get POT, для того, чтобы скачать POT-файл:
Poedit
Есть несколько программ Gettext – переводчиков, но самая популярная среди программ для WordPress плагинов — Poedit. Профессиональная версия Poedit позволяет создать файл PO / POT одним щелчком мыши.
Если у вас нет профессиональной версии, вы можете использовать программу Blank POT.
Поместите файл POT в директорию languages вашего плагина и двойным щелчком по данному файлу откройте его в Poedit. Нажмите Update в Poedit для обновления строк POT файла:
И, наконец, нажмите File > Save или Ctrl + S для сохранения изменений.
Если у вас есть профессиональная версия этой утилиты, генерация POT-файла осуществляется следующим образом:
- Откройте меню File > New WordPress translation и выберите папку с плагином;
- Poedit проанализирует всю директорию и найдет строчки для перевода;
- Выберите язык перевода во всплывающем окне;
- Ctrl + S и файл будет сохранен как.pot;
- Вы также можете сохранить файл как .po и впоследствии переименовать его в .POT.
Файлы PO и POT имеют схожий формат. Есть всего несколько отличий между ними:
- .pot используется переводчиком и это не PO-файл.
- Результирующий файл с переводом — .po файл и .mo файл – это скомпилированный файл.
Приложить файл POT вместе с плагином — хорошая идея. Переводчикам не придется просить вас об этом.
Плагин L10n
Процесс локализации заключается в переводе и установке многоязычности для плагина.
Как локализовать плагин
Для локализации плагина берем файл POT плагина, открываем его в текстовом редакторе, и в секции msgstr вводим перевод. Перевод заключаем в кавычки.
Имя файла давайте согласно формату my-plugin-{locale}.po, где {locale} код языка и/или код страны, который вы определили в константе WPLANG файла wp-config.php. К примеру, код для немецкого языка — de_DE. Значение my-plugin – название плагина.
Помните о том, что из .po файла генерируется файл .mo (который и используется для перевода платформой WordPress). Теперь перейдем, непосредственно к генерации MO файла из файла PO.
Онлайн утилиты для конвертации PO в MO
Есть парочка онлайн утилит для конвертации .po файлов в .mo файлы. Лично я использую tools.konstruktors.com:
Для генерации MO файла из PO-файла, загружаем .pot файл. Утилита автоматически сгенерирует и предоставит .mo файл для скачивания.
Используем Poedit для L10n
Poedit представляет собой утилиту для перевода плагинов с простым интерфейсом. Она также может генерировать MO файлы из PO файлов.
Для локализации или перевода плагина на новый язык с помощью Poedit, следуйте инструкции, изложенной ниже:
- Откройте файл .pot с помощью Poedit.
- Нажмите на строку, которую хотите перевести и введите перевод в текстовой области, помеченной надписью Translation.
- Когда весь перевод будет готов, сохраните файл, дав ему имя в формате my-plugin-{locale}.po. Например, espw-plugin-de_DE.po, где espw-plugin – текстовый домен, а de_DE – код языка.
Когда вы сохраните PO-файл, файл MO будет создан автоматически.
Программа выдаст вам файлы локализации (MO и PO файлы). Скопируйте MO (.mo) файл в папку language вашего плагина для того, чтобы WordPress мог его использовать.
Когда вы будете использовать локализованную версию WordPress, плагин также будет отображаться в той же языковой версии.
Заключение
Если вы хотите, чтобы ваш плагин был доступен большой аудитории – интернационализируйте его и сделайте переводы на нужные языки.
Вы можете сделать перевод только в одном языке. Когда вы подготовите ваш плагин к переводу, это предоставит возможность людям самостоятельно перевести ваш плагин на другие языки.
Если у вас есть вопросы, предложения или дополнения, я буду счастлив увидеть их в комментариях.
Перевод статьи «WordPress L10n: How to Translate Your Plugin» был подготовлен дружной командой проекта Сайтостроение от А до Я.
www.internet-technologies.ru
Локализация создаваемых плагинов WordPress
Очередная тема на предмет локализации (перевода) компонентов WordPress. Здесь хочется затронуть тему локализации в целом и разработки плагинов в частности. Начну с того, что локализация важна и локализация нужна. В сети множество тем и плагинов к WordPress, которые не локализованы. Иногда, очень трудно понять, что автор плагина написал в тексте какого ни будь сообщения. Благо, в основном и общепринятом это сообщение на английском. Но, согласитесь, гораздо приятнее, когда тексты сайта или админки на одном языке, а не скачут, кто во что горазд.Локализация текстов в WordPress
Тексты в WordPress выводятся специальными функциями, которые включают в себя процесс локализации. Если соответствующего перевода нет, тогда текст будет выведен так, как он был передан в функцию. Чаще всего используются функции __() и _e(). Вторым аргументом этих функций является, так называемый, текстовый домен - уникальный идентификатор перевода для Вашего плагина. Обычно это имя плагина латиницей и без пробелов.Файлы переводов
Файлы переводов это два файла на один язык. Маска имени файла для тем: <язык>_<ДИАЛЕКТ>.<расширение>, например ru_RU.po или en_CA.po. Для плагтнов несколько иное: <текстовый домен>-<язык>_<ДИАЛЕКТ>.<расширение>, например my_plugin-en_GB.po.Что же это за файлы?
Файл PO - это файл-карта. Он содержит текст оригинального сообщения и текст перевода. Файл MO - сгенерированный файл перевода на основе .PO файла. Текст перевода берется именно из .MO файла, а файл .PO является только картой для перевода.Чем переводить?
Для локализации тем и плагинов есть программа Poedit.Но, я ее не использую. Почему? Не вижу смысла устанавливать на компьютер еще одну мелкую программу, которая умеет делать только одну узконаправленную вещь - переводить тексты для WordPress. Вместо нее я использую плагин Codestyling Localization (официальный сайт). Он делает ровным счетом то же самое, что и PoEdit, но из админки WordPress. На мой взгляд, это самый простой способ локализации компонентов WordPress.Как родилась эта статья
На днях я решил сделать локализацию своего проекта. Почитал, как это делают другие и сделал ровно так, как сказано и.... не работает! Через пару часов и много минут, наконец, ответ был найден. Примеров, как сделать локализацию плагина, много, но, почему-то почти нигде нет одной важной детали.Программирование "важной детали"
Главным камнем преткновения было то, что подключение пакета перевода должна происходить раньше всего. В моем случае это был конструктор класса плагина, но и там он не работал. Пришлось вынести в главный файл плагина, вот тогда все заработало!/** * Подключаем локализацию * * Файлы локад=лизации будут искаться в <Папка плагина>/languages/ */ function plugin_name_load_plugin_textdomain() { $domain = 'lswp'; // wp-content/plugins/plugin-name/languages/plugin-name-de_DE.mo load_plugin_textdomain($domain, FALSE, basename(dirname(__FILE__)) . '/languages/'); } add_action('init', 'plugin_name_load_plugin_textdomain');aleksey-komov.blogspot.com
Русификация Wordpress, зачем нужны файлы mo po, перевод тем
Из статьи ты узнаешь, как русифицировать твою любимую тему или новый, но очень зашибенный англоязычный плагин к Wordpress (чтобы пользователи на твоем блоге особо не напрягались с английским). Причем сделать это так, чтобы после обновления этой темы или того плагина не пришлось его переводить заново. Статья также поможет тебе, если нужно ТОЛЬКО ОБНОВИТЬ перевод темы или плагина. Такое бывает, если плагин кардинально переделался, а переводчик забил на обновление и некоторые новые или обновленные фразы остались на английском.
Как я подозреваю, этот способ работает не только с Wordpress'ом, но и с другими CMS и программами с открытым исходным кодом.
В инете есть куча статей с советами типа: «Открываем файл footer.php и заменяем все тексты, которые там нашли, на русский эквивалент (не забудьте про кодировку). Повторить для всех файлов в папке твоей темы». И как только ты послушался этого совета, а тема взяла и обновилась, и тебе придется переводить все заново.
Что же предлагаю я?
Я предлагаю создать (или отредактировать уже существующий) файл локализации. Тогда при обновлении плагина или Wordpress темы перевод никуда не денется.
Что это за файл локализации .po (.mo)? Теория.
Ты, наверное, часто видел файлы с расширением .po или .mo в папке с темой для Wordpress'а или в папке зашибенного_плагина? Если не нашел сразу, то они еще могут прятаться в папке Languages. Ну а если не видел, то сейчас услышишь о них впервые (очень полезные и бесплатные файлы, между прочим).
.po файлы - это файлы локализации. Многие популярные языки программирования (C, C++, сценарии sh, Python, Perl, PHP, Java, Паскаль и куча других) имеют функцию gettext, ngettext или подобные, которыми размечают текст для будущего перевода. Но ты скажешь, что ничего подобного не видели в файлах footer.php, header.php или зашибенный_плагин.php и будешь прав. Поскольку эти функции, для удобочитаемости кода, заменяют коротким синонимом __ (два символа подчёркивания) или _e или _c или еще чем-то.
В итоге код:
printf(gettext("My name is %s."), my_name)
выглядит так:
printf(__("My name is %s."), my_name)
Потом специальным экстрактором извлекают все такие строчки в специальный файл-шаблон с расширением .pot. Эта же строка в .pot файле будет выглядеть так:
#: header.php:19msgid "My name is %s."msgstr ""
где header.php - это тот файл, из которого извлекли строку "My name is %s.", а число 19 - это номер этой строки.
Потом переводчик создает из этого файла-шаблона файл локализации с расширением .po. И вот в этот файл ты можешь вписать перевод строки. Выглядеть это будет так:
#: header.php:19msgid "My name is %s."msgstr "А зовут меня %s."
Но это еще не конец. Но уже и не начало .
Как последний, штрих программа переводчик создает бинарный файл (откомпилированный) с расширением .mo, который и скармливается движку Wordpress'а. Вот почему те, кто пробывали не смогли редактировать файл .mo. Как его создать (редактировать) ты узнаешь дальше.
Последовательность действий для перевода.
Теперь пошагово расскажу как нужно действовать если у тебя ни с того ни с сего появилось непредсказуемое желание перевести плагин или тему под любимый CMS.
01.
Качай редактор .po файлов Poedit. Устанавливай его. При первом запуске он что-то спросит - заполняй, как посчитаешь нужным, потом если что подправишь. Чтобы было проще работать, можно поставить русский язык в настройках программы. Для этого тыкай мышкой File --> Preferences --> Change UI Language --> Ищи Russian.
02.
Если .po файлы уже существуют, то можно открыть любой из них (если нету русского ru_RU.po) и отредактировать (заменить фразы другого языка на русские). Но я, для универсальности метода, расскажу о создании этого файла с нуля.
03.
Создай где-нибудь папку (называй как хочешь) и закачивай (или копируй) туда все .php файлы твоей темы, которые нужно русифицировать;
Продолжение читайте во второй части статьи о Переводе плагинов и тем под WordPress, где продолжаются пошаговые инструкции.
GD Star Ratingloading...
Русификация Wordpress или зачем нужны файлы .mo и po, часть 1, 8.7 out of 10 based on 168 ratingsПохожие статьи:
- Русификация Wordpress или зачем нужны файлы mo po, часть 2
- Скачать бесплатно русскую тему Titan для Wordpress
domservisa.com