Иногда возникает ситуация, когда необходимо подправить перевод в WordPress. Например, фраза «Имя пользователя», при регистрации нового пользователя, мягко говоря неинформативна. Обычный, нормальный человек, пытается туда вбить свое имя русскими буквами, но постоянно получает сообщение «ОШИБКА: Это имя пользователя некорректно, поскольку оно содержит недопустимые символы. Пожалуйста, введите корректное имя пользователя.».
При этом он начинает усиленно думать какие такие символы и почему они некорректны. Ведь никаких пояснений насчет того, какие символы корректны, а какие нет не отображается. Видимо разработчики вордпресса или переводчики на русский язык думают что любой россиянин обязан знать о водрпрессе и о том что кириллицу он не переваривает.
Если вы хотите чтобы на вашем сайте регистрировались люди, которые не знают таких слов как вордпресс, символы и прочие заумные вещи, то ситуацию нужно исправить. Иначе вместо регистраций вы получите плевки в свою сторону.
Вот на примере этой ситуации и рассмотрим алгоритм перевода. Исправим фразу на «Имя пользователя (английскими)», чтобы даже ежу было понятно что необходимо вводить.
Все переводы в вордпрессе хранятся в файлах двух типов. Это файлы .po и .mo. Расположены они в папке /wp-content/languages/
Файлы типа .po содержат строки. Вот такого вот вида:
#: wp-includes/general-template.php:411 wp-login.php:717 wp-login.php:883 msgid "Username" msgstr "Имя пользователя (английскими)"
Первая строка это комментарий, поясняющий где встречается переводимая фраза. Вторая — что переводим. Третья — чем заменяем.
Но просто заменить перевод в файле .po еще недостаточно. Вордпресс не использует эти .po-файлы, потому что они большие по объему и каждый раз сканировать такой файл очень затратно по времени.
Для ускорения работы используются файлы .mo, которые представляют собой копии файла .po, но сжатые таким образом, чтобы с ними можно было быстро работать. Поэтому следующим шагом необходимо преобразовать измененный файл .po в файл типа .mo.
Сама технология .po и .mo файлов не является специфичной для вордпресса. Это давно придуманный способ хранения переводов и вордпресс просто его использует. Поэтому есть программы которые умеют работать с файлами таких типов. Вот, например, одна из них https://poedit.net/
Как с ней работать мы рассмотрим в следующей статье. А в этой я дорасскажу где хранится нужная мне фраза и как я получил .mo-файл.
Интересующую меня фразу я нашел в файле /wp-content/languages/ru_RU.po аж в 8166 строке. Исправил ее и создал файл .mo введя всего одну команду в командной строке своего хостинга:
msgfmt -o ru_RU.mo ru_RU.po
Те кто знают что такое ssh, Linux, putty и прочие заумности, сразу сообразят в чем тут дело. Если же вы ничего такого не знаете, то должны понять только одно — вам нужно скачать файл .po со своего хостинга. Исправить его в программе poedit, ссылка на которую приведена выше. Создать файл типа .mo и закачать его на хостинг, заменив старый файл.
Если же вы не найдете интересующую вас строчку в файле который я указал, то не отчаивайтесь, в вордпрессе такой .po файл не один, и нужная вам фраза обязательно найдется. Конечно если она уже переведена и отображается по русски.
Если же вы хотите добавить свои переводы, то принцип тут тот же. Добавьте по вышеприведенному образцу необходимые вам строки, создайте .mo-файл и замените старый новым.