Как локализовать самописную тему для Wordpress?

  1. В themes создал папку под тему fure.

  2. Туда положил файлы темы (header.php, footer.php, index.php и т.д.)

  3. Все работает.

  4. В header.php нужно выводить надписи на разных языках, для этого создал конструкцию

<?php __( 'bla bla', 'pure' )?>
  1. В этой папке имеется директория languages с файлом my-plugin.pot след. содержания:
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"POT-Creation-Date: 2020-10-09T14:34:05+03:00\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"X-Generator: WP-CLI 2.4.0\n"
"X-Domain: languages\n"
  1. Стоит плагин Loco Translate, который при переходе в Themes видит тему fure: введите сюда описание изображения

  2. При переходе в fure видно файл my-plugin.pot: введите сюда описание изображения

  3. При нажатии на него ожидаемо появляются пустые поля: введите сюда описание изображения

  4. Как мне теперь перевести фразу 'bla bla'

введите сюда описание изображения

введите сюда описание изображения

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Quazimorda

Вот пример самого начала файла темы, которую я написал, а затем и перевёл:

msgid ""
msgstr ""
"Project-Id-Version: Le-Pare-Psy-Theme 1.0.0\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: Vladimir N. Smirnov <[email protected]>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: ru_RU\n"
"X-Generator: Poedit 2.0.3\n"

#: le-phare-psy/archive.php:10
msgid "Archive of the day"
msgstr "Архив дня"

#: le-phare-psy/archive.php:13
msgid "Monthly Archives"
msgstr "Архив месяца"

#: le-phare-psy/archive.php:16
msgid "Archive for the year"
msgstr "Архив за год"

Обратите внимание, после заголовочной части темы,которая называется le-phare-psy, идут 3 фрагмента текста. В каждом из них в первой строке указан путь к файлу и строке, где нужен перевод, это для наглядности. Затем строчка на английском, именно она и присутствует в теме в том самом файле в той самой строке. Третьей строчкой идёт перевод фразы на русский.

Вы сами должны отловить такие фразы и сделать переводы на русский и прочие языки.

К примеру, в файле archive.php на 10 строчке есть фраза:

<?php _e('Archive of the day', 'le-phare-psy'); ?>

Вордпресс увидит эту строчку, полезет в папку language, найдёт файл для выбранного языка, у меня это русский и французский и заменит английскую фразу на выбранный язык.

→ Ссылка