Как сделать перевод в WordPress и русифицировать плагины и темы
Большинство плагинов и тем для WordPress созданы на английском языке. Небольшое их количество поддерживает русский язык. Поэтому иногда возникает необходимость сделать перевод в WordPress.
В этой статье я вам расскажу о плагине, который позволяет изменять языковые файлы других плагинов и тем, и создавать собственные языковые файлы для любого языка, в том числе и русского. Таким образом, можно сделать перевод в WordPress для почти любой части сайта, на любой язык.Перевод с плагином Loco Translate
Этот плагин позволяет сделать перевод в WordPress. Скачать его можно по ссылке ниже.
Установите плагин на своём сайте и активируйте его. Затем в консоли у вас появится новый пункт «Переводчик Loco». Перейдите в него, и вы увидите все темы и плагины, которые установлены на вашем сайте, и какие языковые пакеты в них присутствуют.
Вы можете посмотреть видео-обзор об плагин Loco Translate.
Если вам не нравится выполненный перевод, то вы можете отредактировать любой языковой пакет, кликнув на него мышкой. Также можно дополнить его, если перевод выполнен не полностью.
Естественно, можно создать и собственный языковый пакет и осуществить полноценный перевод WordPress. Для этого найдите в списке Loco Translate тему или плагин, который вы переводите, и нажмите на «Новый Язык».
На следующей странице нужно выбрать язык из списка. Выберите тот язык, на который сейчас будете переводить.
Также можно выбрать, где будет сохранён языковой файл: в каталоге переводимого плагина или темы или в глобальном языковом каталоге. В дальнейшем этот файл можно будет пересохранить на другой сайт, чтобы русифицировать тот или иной продукт. Поместить его нужно будет именно в то место, куда он сейчас сохраняется.
И когда выставлены все настройки, нажмите кнопку «Начать перевод».
Вы попадёте в редактор языкового файла. Тут всё просто. В верхнем поле в графе «Source text» показаны все строки, которые есть в языковом файле.
Выделяя любую строку, можно задать ей значение на другом языке, например, на русском. Переведённую фразу следует записать в поле «Russian translation» (или вместо «Russian» может быть написан другой язык, смотря, на какой вы переводите).
Перевод сразу же появится в верхнем поле в графе «Перевод».
Таким образом, можно перевести каждую строку языкового файла. После завершения необходимого перевода в WordPress, нажмите кнопку «Сохранить».
Обычно бывает необязательным делать перевод в WordPress для всех строк языкового файла плагина или темы. Бывает достаточным перевести только те надписи, которые отображаются посетителю. Поэтому не тратьте время зря и переведите только то, что вам нужно.
Перевод в WordPress в PHP файле
Практика показывает, что иногда можно столкнуться с проблемой, когда надписи на сайте записаны не в языковых файла .po и .mo, а непосредственно в PHP файлах темы или плагина. Тут уже плагин Loco Translate не поможет и нужно пойти другим путём.
Я покажу один из методов, которым пользуюсь сам, который помогает мне сделать перевод в WordPress, когда не получается решить всё с помощью Loco Translate. Потребуется хоть какой-то профессионализм и смекалка.
Допустим, необходимо перевести надпись на этой кнопке «Read Posts».
Нужно найти, в каком файле темы и в каком месте она записана, и просто переписать её по-русски. Чтобы найти эту надпись в теме, следует вызвать в браузере инспектора. Для этого нужно нажать клавишу F12.
Далее показываю на примере FireFox, в других браузерах может что-то отличаться. Нужно перейти в режим выделения.
Затем, выбрать на сайте надпись, которую переводим. И в инспекторе в левой его части вы увидите фрагмент кода, который отвечает за вывод этой кнопки.
Скопируйте какую-то часть этого кода, например, я возьму «class=»continue-reading»», и найдите, в каком файле этот фрагмент встречается в теме (или в плагине).
Как найти фрагмент кода в целой куче файлов – это вообще отдельная история. Я использую удобную функцию файлового менеджера своего хостинга Beget, которая позволяет искать текст в файлах.
Если у вас нет такой функции в файловом менеджере, то можно просто скачать папку темы или плагина, в которой осуществляется поиск, и воспользоваться стандартными инструментами Windows.
Итак, когда файл найден и фрагмент кода, отвечающий за вывод переводимой надписи, обнаружен, нужно просто заменить надпись и сохранить изменения в файле.
Этот метод долгий, кропотливый и требует знаний, но он единственный, если не получается сделать перевод в WordPress с помощью плагина Loco Translate. Не забывайте перед редактированием файлов делать их резервную копию.
Здравствуйте! C помощью этого плагина перевела тему. Всё перевелось хорошо, но вот 3 фразы никак не хотят «подхватываться».
http://prntscr.com/cawz7u
А именно «by» и «About the Author:» и «Logged in as»
В настройках Loco перевод установлен:
http://prntscr.com/cawzhq
http://prntscr.com/cawzmh
Но почему-то на сайте всё равно английский вариант, хотя всё остальное по-русски.
В чем может быть проблема, как думаете?
Если необходимо, сайт: http://psyhelp24.org/
Спасибо!
Здравствуйте!
Это значит, что надписи, которые не перевелись, записаны в PHP файлах установленной темы, а не в языковых файлах. Нужно найти их и перевести прямо в файлах, вручную.
Здравствуйте, при попытке сохранения перевода появляется надпись Error: Forbidden и перевод соответственно не сохраняется, хотел перевести вручную, скачал фаил -ru_RU.po перевёл часть, залил обратно на сервер, но перевод не появляется, что может быть?
Здравствуйте!
Ошибка Forbidden означает, что у вас нет прав на редактирование. Попробуйте изменить права папки с языковыми файлами. Если вы перевели вручную и ничего не изменилось, возможно, вы где-то допустили ошибку.
Понял, спасибо, а права 777 ставить?
700 или 777 должно помочь.
Понял, спасибо попробую.
Сейчас перевод сохраняет, но некоторые фразы отображаются не переведёные, хотя в Loco Translate перевод есть.
Это значит, что нужно найти, где эти надписи записаны в PHP файлах и перевести их там. В конце статьи рассказано, как можно найти их.
При обновлении плагина или темы перевод слетает. Что можно сделать?
Перед обновлением, сохраняйте файлы локализации на компьютер, потом обновляйте и после загружайте файлы обратно.
не получается ничего. не понятно на видео быстро все летит. скачала. активировала. дальше как сделать чтобы было на русском? все равно на английском плагины.
Если сделать всё по инструкции, то переводы должны отобразиться на сайте. Правда, плагин немного обновился.
Вопросы:
1. Переводчик установил, в панеле его есть! Но, не могу использовать казахский язык, его в списке нет! Или по другому можно?
2. Вообще, насколько можно интерфейс сайта изменить на другой язык, в частности на казахский ?
Заранее, спасибо!
В этом плагине казахского языка нет. Вы можете создать кастомный языковой файл и переводить в него.
Что и где это "кастомный языковый файл", как с ним работать?
Насчет казахского интерфейса??
Спасибо!
Мне трудно ответить на ваш вопрос в рамках комментария. Для этого потребуется определённая объёмная инструкция.
Добрый день!
При сохранении файла перевода выдает ошибку Error: Internal Server Error
Здравствуйте! Вероятно, вашему хостингу не хватает ресурсов для работы с этим плагином.
Не работает на 1 сайте! На 2-х других работает (PHP 5.6)! Может быть проблема в PHP 7.0?
Да, проблема может быть в этом. Попробуйте уменьшить версию PHP.