Разбираемся как делать правильно перевод плагинов WordPress на разные языки, способы перевода, программы.
Вводные
Перевод сайта WordPress на язык, который понимает большинство вашей аудитории, поможет вам улучшить пользовательский опыт на вашем сайте, наладить контакт с целевой аудиторией и повысить рейтинг SEO в локальном поиске, увеличив при этом количество посетителей и повысив конверсию. Это особенно относится к переводу плагинов WordPress, которые являются одной из самых важных частей любого сайта WordPress.
Далее мы рассмотрим процесс перевода плагинов WordPress с помощью различных методов. В зависимости от выбранного метода, вы можете перевести плагин для всех пользователей WordPress.org или только для вашего сайта и его посетителей. И хотя процесс может быть длительным, если тщательно следовать изложенным шагам, то вы сможете перевести свои плагины WordPress на целевой язык и воспользоваться всеми преимуществами, которые дают эти переводы.
Зачем делать перевод плагинов WordPress
Я постараюсь осветить тему перевода плагинов Вордпресса с разных сторон — как переводить свои плагины и как сделать вклад в сообщество делая переводы плагинов других разработчиков.
WordPress имеет широкий спектр качественных плагинов практически для любых целей, но большинство из них на английском языке, хотя есть интересные варианты и на других языках.
Если мы говорим про ваш собственный плагин, то скорее всего ваша целевая аудитория и посетители сайта не являются преимущественно англоговорящими, и вы можете упустить много трафика и возможных конверсий, оставив фразы в вашем плагине WordPress на английском языке.
Чтобы избежать этого, следует перевести ваши плагины WordPress (и содержимое вашего сайта) на язык, который понимает большинство ваших посетителей. Вы также можете сделать перевод на несколько языков, если ваш сайт имеет более глобальный охват.
В этом случае ваш сайт будет занимать более высокие позиции в результатах локального поиска, что поможет ему быстрее развиваться. Кроме того, вы сможете правильно локализовать каждый перевод для максимальной привлекательности посетителей.
Однако для того, чтобы сделать индивидуальный перевод, требуется гораздо больше работы, чем просто изменить языковой параметр сайта в бэкенде (админке) Вордпресса. Я рассмотрю несколько способов того, как как перевести плагин WordPress на выбранный вами целевой язык.
Как я сказал выше — у нас есть несколько вариантов. Они включают в себя внесение вклада в существующий перевод плагина WordPress.org или создание пользовательского перевода только для вашего сайта с помощью плагина перевода WordPress или используя программы для перевода.
Перевод плагинов WordPress.org
Мы можем стать контрибьютером на WordPress.org, т.е. мы можем сделать вклад в развитие сообщества вокруг Вордпресс.
WordPress.org позволяет всем желающим участвовать в переводе любых плагинов WordPress, которые размещены на их сайте. Когда в определенном плагине переведены все 100% текстов, переведенных участниками, и эти переводы будут признаны приемлемыми соответствующими группами переводчиков, эти переводы будут доступны в WordPress для всех его пользователей.
Если вы хотите внести свой вклад в перевод конкретного плагина WordPress, вы можете сделать это, зайдя непосредственно на страницу любого плагина и нажав на уведомление, подобное показанному ниже. Конечно, уведомление, которое вы увидите, будет на вашем локальном языке. Нажав на уведомление, вы попадете на страницу плагина в разделе «Перевод WordPress». Оттуда вы сможете выбрать подпроекты плагина и тексты, в которые вы могли бы внести свой вклад с помощью перевода.
Если вы не видите приглашения перевести плагин на его странице, вы также можете посетить страницу Translating WordPress вручную. Там вы увидите список всех доступных для перевода языков, которые в настоящее время поддерживаются WordPress.
Найдите язык, т.е. локаль, на которую вы хотите перевести конкретный плагин WordPress, и нажмите на ссылку Contribute Translation рядом с ним.
На следующей странице вы увидите, где вы можете внести свой перевод, например, в ядро WordPress, темы и плагины. По умолчанию будет выбрана вкладка ядра WordPress, но вы можете переключиться на любую вкладку по своему усмотрению.
Поскольку в этой статье мы о том, как сделать перевод плагинов WordPress, вам следует выбрать вкладку Plugins. Затем найдите плагин, в который вы хотите внести свои переводы. И нажмите на его ссылку Translate Project, чтобы продолжить с переводом.
На следующей странице перевода плагина вы увидите список подпроектов, содержащих строки, требующие перевода, а также текущий прогресс перевода этого подпроекта. Выберите подпроект, строки которого вы хотите перевести, и нажмите на него, чтобы продолжить.
Наконец, вы увидите список строк плагина, которые нуждаются в переводе. Однако, чтобы добавить свой перевод этих строк, вам сначала нужно войти в свою учетную запись WordPress.org, как показано на скриншоте ниже.
Наконец, все переводы, которые вы вносите, должны быть одобрены командой переводчиков соответствующей локали WordPress, а общее обсуждение ведется на специальном канале Slack, привязанном к каждому языку, поддерживаемому WordPress.
Когда переводы будут одобрены, т.е. признаны на 100% стабильными, они будут автоматически добавлены в папку wp-content/languages/plugins. И вы сможете использовать их, просто переключив язык вашего сайта. Конечно, при условии, что у вас установлен и активирован соответствующий плагин.
Перевод с помощью плагина
Пользователи WordPress, которые не хотят или не имеют времени на перевод плагинов WordPress и ожидание одобрения от команды переводчиков, могут перевести плагины для личного использования на своем сайте.
Это можно сделать двумя способами.
Первый — перевести сайт прямо в админ панели, используя подходящий плагин перевода WordPress.
Второй — сделать перевод отдельно и загрузить его на сервер. Для этого используются программы для перевода, например Poedit, которую можно скачать на компьютер и установить.
Преимущество последнего варианта заключается в том, что вы можете отдать перевод на аутсорсинг, если не уверены в своих языковых навыках.
Плагин Loco Translate очень популярный бесплатный плагин перевода со встроенным редактором перевода, доступ к которому осуществляется из панели администратора WordPress. Он может извлекать переводимые строки, а также создавать и управлять файлами перевода всех частей WordPress.
Он также может компилировать файлы .mo по умолчанию, предлагать «безопасный» подкаталог в каталоге wp-content/languages/ для хранения перевода и интегрироваться с API-интерфейсами перевода, такими как Google, Microsoft, DeepL и Yandex.
Если вы выберете бесплатную версию этого плагина, то вы должны знать, что он предлагает только до 2000 переводов, распределенных по двум проектам. Вы можете разблокировать больше с их премиальными ежемесячными тарифными планами.
Чтобы перевести плагин с помощью Loco Translate, после установки плагина перейдите в раздел Loco Translate > Plugins. Затем вы увидите список всех переводимых плагинов вашего сайта. Там также будет дополнительная информация о переводе, наиболее важной из которой является текстовый домен плагина. После этого найдите в списке плагин, который вы хотите перевести, и нажмите на него, чтобы продолжить.
На следующей странице вы увидите список уже доступных переводов и их прогресс. Сюда входят как переводы, сделанные вами ранее с помощью плагина Loco Translate, так и переводы, сделанные на WordPress.org, которые могут быть у плагина.
Если язык перевода находится в списке существующих переводов, вам достаточно щелкнуть на него, чтобы отредактировать его. Однако если ваш целевой язык не входит в список существующих переводов, то вам нужно нажать на ссылку «Новый язык» (New language), чтобы создать перевод на этот язык для вашего сайта.
На следующем экране вам нужно будет выбрать язык перевода — у вас будет возможность выбрать один из поддерживаемых WordPress языков или вставить свой собственный. На этом же экране вам также будет предложено выбрать место (из трех возможных), где вы хотите сохранить файл перевода .po, который будет создан в ходе этого процесса.
Выберите язык и место, где будет храниться файл .po. Плагин Loco Translate предлагает использовать либо свое пользовательское расположение — каталог:
wp-content/languages/loco/plugins/
Либо системное расположение WordPress — каталог:
wp-content/languages/plugins/
Они более безопасны при обновлении плагинов. Мы решили хранить .po файл в пользовательском расположении плагина Loco, в директории:
wp-content/languages/loco/plugins/
Затем начинаем переводить. Вы сможете увидеть список доступных для перевода строк в разделе «Исходный текст» (Source text) в верхней части страницы. В качестве примера для этой статьи я выбрал перевод надписи About Me, которая является частью виджета, созданного плагином, который мы переводим.
Чтобы легче его найти, мы воспользовались функцией поиска, предоставляемой плагином. Рекомендую использовать эту функцию как можно чаще, поскольку она облегчает перевод конкретных строк или текстов.
Если вы работаете над несколькими похожими строками, убедитесь, что используете именно те правила написания букв, которые были использованы в строке, которую вы хотите найти. Это поможет вам сделать работу по переводу более эффективной.
После того, как вы найдете точный текст, который хотите перевести, щелкните по нему и вставьте свой перевод в секции перевода ниже. Затем, чтобы сохранить свой прогресс, нажмите кнопку Save (Сохранить).
Как только вы это сделаете, вы увидите сообщение об успешном завершении компиляции файлов переводов .po и .mo. Они будут храниться в том месте, которое вы выбрали ранее.
С учетом сказанного, прежде чем мы двинемся дальше, хочу кратко пояснить, что представляют собой эти файлы перевода.
Во-первых, чтобы плагин WordPress можно было перевести, он должен иметь файл .pot (шаблон переносимого объекта, Portable Object Template), который содержит все надписи на английском языке, созданные в коде плагина.
Из этого файла .pot создается файл .po (переносимый объект, Portable Object) для каждого языка отдельно путем добавления определенных заголовков и раздела перевода рядом с каждой из строк (меток). Наконец, из файла .po, который содержит метки и их соответствующие переводы, компилируется файл .mo (Machine Object). Фактически этот файл является двоичным представлением файла .po, который функции gettext
используют для создания перевода.
На этом этапе обычно следующим шагом является проверка статуса ваших переводов на сайте. Однако сейчас это не так. Если бы вы сейчас зашли на соответствующую страницу своего сайта, то увидели бы, что соответствующий текст еще не переведен.
Причина, по которой перевод не появился автоматически, заключается в том, что сначала необходимо изменить язык сайта на язык перевода. Для этого перейдите в раздел Settings > General (Настройки > Общие) и найдите опцию Site Language (Язык сайта).
По умолчанию он будет установлен на язык, который вы выбрали при установке WordPress, но вам следует изменить его на язык перевода и нажать кнопку Save Changes (Сохранить изменения), чтобы применить изменения.
Вы заметите, что большинство текстов в админ панели изменились — они используют переводы, сделанные вами, которые считаются одобренными на 100%. Что касается вашего собственного перевода, вам следует обновить страницу сайта, которую вы просматривали ранее, и посмотреть, как сделанный вами перевод выглядит на вашем сайте. Строка «About Me» изменилась и стала отображаться на новом языке.
Выполнение описанных выше шагов означает, что вы успешно приступили к переводу плагина WordPress на нужный язык. Ваш перевод появится в списке существующих переводов в опциях плагина Loco Translate. Вам нужно будет нажать на него в этом списке, чтобы отредактировать его и перевести все оставшиеся строки, которые находятся в файле .pot плагина.
Перевод с помощью Poedit
Альтернативным способом сделать перевод плагинов WordPress — является использование программ, которые можно найти в Интернете и которые полагаются на систему перевода gettext
. Одной из таких программ для перевода, которая популярна среди пользователей WordPress, является Poedit. Есть еще EasyPo.
Она поставляется с минималистичным, удобным для начинающих интерфейсом, который предлагает варианты перевода, но при этом предлагает способ создания шаблона и управления файлами перевода для более продвинутых пользователей.
По этой программе я напишу отдельное руководство, если в комментариях будет интерес.
Чтобы использовать Poedit, вам нужно будет перейти на сайт Poedit и скачать программу, нажав кнопку «Бесплатная загрузка» (Free Download), которая доступна для Windows, Mac и Linux.
После скачивания программы вам необходимо установить ее в соответствии с инструкциями, приведенными в окне установки. После этого вы сможете приступить к переводу. Однако, чтобы правильно использовать этот инструмент перевода в WordPress, помимо загрузки и установки программы, есть два дополнительных требования.
Плагин WordPress, который вы планируете перевести, должен быть переводимым. Это означает, что он должен содержать файл шаблона перевода .pot, на основе которого будут созданы файлы .po и .mo. Если такой файл существует, то его местонахождение, скорее всего, в подпапке plugin_name/languages/, если только сам плагин не определил собственное место хранения файла .pot.
Например, плагин WooCommerce использует пользовательское расположение — его файл .pot может быть найден в подкаталоге /i18n/languages/.
В любом случае, вам нужно найти .pot-файл плагина и скачать его на свой компьютер с помощью FTP. Если вы не можете найти файл .pot для плагина, который вы хотите перевести, или если такого файла не существует, вам следует поговорить с авторами плагинов о получении файла .pot для плагина.
Помимо этого, вам также необходимо знать текстовый домен плагина, который используется для целей перевода. При использовании плагина Loco Translate об этом не нужно было беспокоиться, так как плагин сам давал названия соответствующим файлам .po и .mo в соответствии с руководством по переводу WordPress.
Однако, чтобы перевод WordPress работал, эти файлы должны быть названы следующим образом: {text_domain}-{locale}.po
и {text_domain}-{locale}.mo
. Соответствующие заполнители должны быть заменены на текстовый домен и код языка плагина в этом порядке.
Например, в случае с плагином «Lekker Core» текстовым доменом является lekker-core. Наш целевой язык — стандартный испанский язык, который имеет код языка es_ES. Это означает, что имена файлов будут:
- lekker-core-es_ES.po
- lekker-core-es_ES.mo
Чтобы выяснить текстовый домен определенного плагина, вы также можете спросить об этом его авторов. Кроме того, вы можете изучить папку плагина с помощью FTP-клиента. В большинстве случаев она будет содержать файл, названный так же, как и плагин, или максимально близко к нему. В начале этого файла вы увидите блок комментариев, подобный тому, что показан на скриншоте ниже. Это называется заголовком плагина.
Заголовок плагина необходим для того, чтобы WordPress интерпретировал определенную папку как плагин, и он содержит соответствующую информацию о нем. Среди прочего, он будет содержать текстовый домен плагина и, в некоторых случаях, путь к домену, если плагин использует пользовательскую структуру папок перевода.
Теперь, когда вы заложили основу, вы готовы создать перевод выбранного вами плагина WordPress с помощью Poedit. Откройте программу на компьютере, где вы увидите окно приветствия, похожее на то, что показано ниже.
Чтобы создать новый перевод, нажмите кнопку Create new…, которая позволит вам выбрать файл шаблона .pot, используемый в качестве основы для перевода. Кроме того, если вы уже делали некоторые переводы с помощью Poedit, последние использованные файлы переводов будут доступны в разделе «Recent files«.
Затем вам нужно будет найти и выбрать файл .pot на вашем компьютере с помощью файлового диалогового окна. Файл .pot плагина — это тот файл, который вы ранее скачали с сервера по FTP из папки языка или локализации плагина. После выбора файла .pot нажмите на кнопку Open, чтобы открыть его в приложении Poedit и начать перевод.
Открыв шаблон .pot в программе Poedit, вы увидите все надписи, доступные для перевода. Кроме того, в появившемся небольшом всплывающем окне вам будет предложено выбрать язык перевода. Выберите язык, на который вы хотите перевести, и нажмите кнопку OK.
Это преобразует файл в файл с расширением .po, который вы сможете увидеть в левом верхнем углу приложения после выбора языка. Затем вы сможете перевести его, выбрав метку щелчком мыши и введя ее перевод в поле «Translation» внизу.
В качестве примера мы снова используем тот же текст «About me«. Как вы можете видеть на скриншоте ниже, в правой части приложения Poedit вам будут предложены варианты перевода для этого ярлыка. Вы можете выбрать одно из них (мы использовали второе предложение) или сделать свой собственный перевод.
Кроме того, я рекомендую использовать функцию поиска (Find) в приложении Poedit, особенно если вы ищете конкретную надпись. Эта функция доступна при одновременном нажатии клавиш Ctrl/Cmd и F на клавиатуре или при переходе к пункту Edit -> Find… в опциях программы.
После того как вы сделали необходимые переводы, пришло время сохранить файл. Однако, поскольку переводы WordPress требуют файл с расширением .mo, вам необходимо убедиться, что при сохранении файла .po будет создан соответствующий файл .mo. Для этого перейдите в раздел File -> Preferences… (Файл -> Параметры…).
Откроется новое всплывающее окно, содержащее различные дополнительные опции приложения, которые вы можете установить. Нас интересует опция Automatically compile MO file when saving (Автоматически компилировать MO-файл при сохранении). Найдите эту опцию и убедитесь, что флажок рядом с ней установлен. Затем нажмите кнопку OK, чтобы сохранить настройки и выйти из всплывающего окна.
После этого вы можете сохранить файл, нажав на опцию Save, расположенную в верхней части окна Poedit.
Откроется диалоговое окно Save as… (Сохранить как…) с предварительно выбранным именем файла по умолчанию. Однако вам нужно будет удалить имя файла по умолчанию и заменить его именем, которое соответствует соглашению об именовании файлов переводов WordPress. А именно, файл должен быть назван по схеме {text_domain}-{locale}.po
, с правильно установленным текстовым доменом плагина и соответствующим кодом языка.
Учитывая, что мы используем плагин Lekker Core и перевод на стандартный испанский язык, наш файл называется lekker-core-es_ES.po
. На данном этапе вы также можете изменить место сохранения файла на вашем компьютере. Просто убедитесь, что выбрали более удобное для вас. Затем нажмите кнопку Save, чтобы сохранить файл.
Поскольку мы включили опцию, которая будет автоматически компилировать .mo файл при сохранении .po файла, сгенерированный .mo файл будет помещен в то же место на вашем компьютере. После этого остается сделать только две вещи.
Первое — загрузить оба файла (.po и .mo) в соответствующий каталог на вашем сервере. Поскольку этот метод перевода не предполагает использования плагина Loco Translate, то есть только два возможных расположения — расположение автора или расположение системы.
Местоположение автора относится к папке:
wp-content/plugins/plugin_name/languages/
или любой пользовательской подпапке перевода в папке конкретного плагина. С другой стороны, системное расположение — это расположение WordPress по умолчанию для перевода плагинов, то есть папка:
wp-content/languages/plugins/
Для этой статьи мы решили использовать системное расположение WordPress. Поэтому мы загрузили сохраненные файлы .po и .mo в следующий каталог нашего сайта с помощью FTP-клиента:
wp-content/languages/plugins/
Второе — осталось войти на сайт и перейти в раздел Settings -> General (Настройки > Общие), чтобы изменить язык сайта. Для этого найдите опцию Site Language (Язык сайта) и измените ее значение на язык, который вы выбрали в качестве целевого для перевода. Это позволит вашему переводу вступить в силу.
После этого просмотрите свой сайт, чтобы убедиться, что все надписи, которые вы перевели в Poedit, правильно отображаются на сайте.
Во избежание лишних действий рекомендую полностью перевести все тексты в программе Poedit, прежде чем загружать их на сервер. Если вы хотите обновить неполный перевод, сделанный с помощью приложения Poedit, вам нужно будет еще раз сохранить обновленные версии файлов .po и .mo на своем компьютере. После чего загрузить их на сервер в одно из двух ранее указанных мест, которые заменят файлы .po и .mo, загруженные туда ранее. Поэтому самый простой способ — сделать все необходимые переводы до загрузки файлов на сервер.
На этом про перевод плагинов WordPress пока всё. Если есть вопросы — оставляйте комментарии. Материал будет дополняться по мере необходимости.