Локализация вашей темы WordPress

Категория: WordPress Тэги:

Важной частью разработки WordPress тем, то что его можно сделать многоязычным. И для это используются файлы локализации. Но для работы с ними надо объявить так называемые «text domain». Тут я расскажу как сделать свои файлы локализации. Первое, что нужно сделать, это загрузить «text domain», добавив следующую строку в файл functions.php нашей темы:

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

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

Таким образом мы указываем что языковые файлы для вашего «mydomain» будут находиться в папке «languages» вашей темы сайта. Эти файлы имеют расширение .po и .mo.

Файл .po это файл с вашими переводами. Вот пример  содержания этого файла:

В начале идёт небольшая общая информация, а дальше уже переводы. Перевод состоит из 2х параметров «msgid» — что переводим, «msgstr» — на что переводим (сам перевод). Так же что бы знать в где стоит переводимое слово в шаблоне, можно указывать комментарием после символа # название файла и строку.

После того как файл с расширением ru_RU.po составлен, его надо скомпилировать в файл в расширением ru_RU.mo. Это можно сделать с помощью программы Poedit, в меню Файл -> Компилировать в формат МО. На этом работа с фалами перевода окончена. 

Теперь для добавления перевода в сам шаблон нам достаточно вставить такой php код: 

Первым параметром передаём слово которое будет выводиться по умолчанию и будет переводиться на другой версии сайта.  И вторым параметром передаётся наш «text domain».