Май 242015
 

В последнее время решил плотно заняться приведением своего блога в порядок, и перевести все что не переведено на нормальный русский язык. Поиски в интернете дали отрывочные сведения, и поэтому я решил все собрать/систематизировать и написать сюда.

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

wp-content/themes/<имя темы>/languages/

Если это касается перевода на русский язык, то находим 2 файла:

ru-Ru.mo
ru-Ru.po

Соответственно, файлы *.po содержат переведённые строки в текстовом формате. С этими файлами работает переводчик темы. Файлы *.mo это те же строки, но в скомпилированном варианте. С этими файлами работает ядро WordPress для отображения перевода.
Так как простое внесение изменений в файл с расширением *.po не принесет желаемых глазам эффекта, то нужно понимать, что необходимо как-то скомпилировать данный файл в понятный для WordPress язык, для этого мы воспользуемся замечательной программой PoEdit, она пока свободно распостраняется, и может быть скачана с официального сайта: http://poedit.net/ После установки достаточно открыть соответствующий файл *.po
poedit-wordpress-themes-780x464
Работать с программой Poedit достаточно легко — исходный текст слева, перевод справа. Для редактирования перевода щёлкните на соответствующую строку и введите новый перевод. При сохранении, Poedit автоматически скомпилирует ваш перевод и создаст соответствующий файл *.mo После этого необходимо заменить эти два файла в папке languages.
Если WordPress установлен на русском языке, то вы сразу же увидите изменения. Если же WordPress настроен на английский язык, то следует изменить локаль в файле wp-config.php. Найдите в этом файле строку определяющая константу WPLANG и измените её:

define( 'WPLANG', 'ru_RU' );

Вот конкретный пример изменения и применения данных знаний:
Необходимо заменить, не совсем верную интерпретацию словосочетания Reading Post на понятное русское «Читать далее…» при ситуации, когда нам нужно скрыть пост под спойлер, или он настолько длинный, что будет некрасиво вывешивать его полностью. Для этого мы пользуемся тегом:

<!--more-->

Воспользовавшись поиском находим, что в шаблоне suffusion необходимый файл content.php находится по пути /suffusion/post-formats
Открываем его и находим содержание:

$continue = __('Reading Post... &raquo;', 'suffusion');
the_content($continue);

Нас должно интересовать то, что в одинарных кавычках, т.е. Reading Post… »
Да, нам понадобится еще как минимум строка, в которой эта запись существует, это необходимо для того, чтобы при компиляции CMS знала, что на что подменять (в данном случае это будет 29 строка).

Идем, и открываем файл ru-Ru.po, создаем новый код:

#. Text in function
#: suffusion/post-formats/content.php:29
msgid "Reading Post... &raquo;"
msgstr "Читать далее... &raquo;"

Далее открываем тот-же файл ru-Ru.po в программе, которую скачивали и устанавливали ранее Poedit, и через контекстное меню сохраняем изменения (которые мы внесли ранее, но при сохранении происходит компиляция файла с расширением *.mo).
Теперь осталось самое главное, это сохранить 2 файла в директории /languages и наслаждаться русским языком.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)