Как найти перевод в prestashop 1.7.х?

В статье пойдет речь о пути решения для prestashop начиная с версии 1.7.6.x. Решение также касается новой системы переводов, с помощью которой вы делаете переводы. Новая система переводов хранит переводы, которые вы делаете через бэк офис уже в базе данных, а не в файлах переводов как было раньше. Точнее таблица называется ps_translation. Выбрать фразы переводов можно таким SQL скриптом:
1 2 3 |
SELECT * FROM ps_translation p; |
Итак, рассмотрим путь решения, если вы не можете найти нужный перевод.
Для начала, почистим кеш — делается это в бэк офисе — Advanced Parameters->Performance->Clear cache
Также, можно вручную почистить кеш, удалив содержимое папки …/var/cache/
К примеру, давайте найдем слово Код (Reference) темы фронт офиса для карточки товара:


Для поиска перевода переходим International -> Translations:

В поле Search translations вводим слово Код. В результате появляются все совпадения, которые нашел скрипт:

Заметьте, что поисковый скрипт учитывает регистр символов в поисковом слове. Таким образом слова Код и код для него будут разными. Пробел также может влиять на поисковый механизм.
Итак, после того, как были показаны все совпадения. Переходим по доменам, расширяя их стрелками. И находим нужное слово:

Если после этого не получается найти слово, то можно найти путь в бэк офисе к слову через файлы темы. Но для этого нужно знать само слово для перевода и где оно может быть расположено. Найдем где располагается слово для перевода. К примеру, слово Reference, которое нуждается в переводе, расположено в файле темы …/themes/classic/templates/catalog/_partials/product-details.tpl
Оно определено доменами: Shop.Theme.Catalog
Переходим в поле Search translations и вводим слово Reference. И переходим по нужным нам доменам: Shop->Theme->Catalog:

Если слово оказалось пустым, то заполняем его нужным переводом.
Что касается переводов для модулей, которые поддерживают старую систему переводов, то для них система переводов не изменилась.