Автор Тема: Проблема с переводом Универсального модуля оплаты от ORS - Prestashop 1.5.x  (Прочитано 1823 раз)

08 Сентябрь 2013, 15:44:59
  • Фрилансер
  • *
  • Сообщений: 181
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
У меня Prestashop 1.5.5.0 и Универсальный модуль оплаты от ORS v1.7. Данный баг устойчиво проявляется на всех Prestashop 1.5.x и Универсальном модуле оплаты vv1.5-1.7. На других не проверял.

Несмотря на наличие полного перевода на русский язык (ru.php), интерфейс админки Универсального модуля оплаты все равно оставался на английском языке.

Единственным переведенным стрингом было слово "Действия" в шапке последней колонки.

Пробовал все, что возможно с ru.php - копировал его с соответствующей правкой местоположения (модуль, шаблон) в папку с самим модуле и в папку \themes\MOЙШАБЛОН\modules\universalpay\translations\

Ничего не менялось. Тогда вообще удалил ru.php модуля изо всех мест.  Самое интересное - стринг "Действия" остался на русском как и был. Стало ясно, что он берется из другого места. Путем поиска нашел, что из \translations\ru\admin.php
Там их несколько  у меня строка 4062.

Пошел совершенно тупым путем.

Исправил файл \themes\MOЙШАБЛОН\modules\universalpay\translations\ru.php следующим образом:


Начало всех строк из ru.php для Универсального модуля оплаты в виде

$_MODULE['<{universalpay}default_my>adminunipaysystem_
было заменено вначале на $_LANGADM['Helper (как в файле \translations\ru\admin.php)

$_LANGADM['Helperb718adec73e04ce3ec720dd11a06a308'] = 'ID';
$_LANGADM['Helper8c2857a9ad1d8f31659e35e904e20fa6'] = 'Логотип';
$_LANGADM['Helper49ee3087348e8d44e1feda1917443987'] = 'Название';
$_LANGADM['Helperc1069a480848e06782b81b8bea9c0c94'] = 'Краткое описание';
$_LANGADM['Helper86754577897acfb25deb69039d49d9a7'] = 'Показывать';
$_LANGADM['Helperf9c8caf36e4edd9019ad377a3e5913f9'] = 'Платежные системы';
$_LANGADM['Helper4e140ba723a03baa6948340bf90e2ef6'] = 'Название:';
$_LANGADM['Helper6252c0f2c2ed83b7b06dfca86d4650bb'] = 'Недопустимые символы:';
$_LANGADM['Helper6637b53a5820cef0817b7f2a2553bfc8'] = 'Показывать:';
$_LANGADM['Helper00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Активен';
$_LANGADM['Helperb9f5c797ebbf55adccdd8539a65a0241'] = 'Не активен';
$_LANGADM['Helper234078adec0a64008b6ae77653776cfa'] = 'Краткое описание:';
$_LANGADM['Helperc1069a480848e06782b81b8bea9c0c94'] = 'Краткое описание';
$_LANGADM['Helpera973d7208bb1ba1588ff414509cf7e4e'] = 'Отображается на странице выбора способа оплаты.';
$_LANGADM['Helperd0042a700e9bdf79689d63ee6846dc0e'] = 'Развернутое описание:';
$_LANGADM['Helperccab7bfd5b0b1989d5475c9a1a5effb2'] = '%total% заменяется на значение суммы оплаты';
$_LANGADM['Helper446e070f627483565661f8a26b4f4849'] = 'Описание при успешном оформлении заказа:';
$_LANGADM['Helper70f76d85dea09b3c0bd1d0c3f8035c34'] = '%order_number% заменяется номером заказа, %total% - суммой заказа.';
$_LANGADM['Helper461900b74731e07320ca79366df3e809'] = 'Логотип:';
$_LANGADM['Helper3f8e67d2ef961f473f481b2da4d74f13'] = 'Загрузите логотип способа оплаты с Вашего компьютера.';
$_LANGADM['Helper4617d8d0a8639a14eb051de337cf5498'] = 'Статус заказа:';
$_LANGADM['Helper6d448d81cdfb465c458a0f221bbef48d'] = 'Статус заказа после его размещения.';
$_LANGADM['Helperab8cba13a061fe8d4a330bcc8d6b0175'] = 'Способы доставки:';
$_LANGADM['Helper14c5920c988429689db102b62fc72b2c'] = 'Способы доставки, с которыми используются этот способ оплаты.';
$_LANGADM['Helper8783bc7ae2b9e8d93a2bc15150aaefa8'] = 'Группы:';
$_LANGADM['Helper9ba5fe29e0040bbc6593091557681cf4'] = 'Группы покупателей, которым доступен данный способ оплаты';
$_LANGADM['Helper38fb7d24e0d60a048f540ecb18e13376'] = 'Сохранить';
Тогда все заработало как надо. Что будет при переводе через админку не знаю.

Работает и такой вариант: вставить все эти строки в \translations\ru\admin.php после строки:

$_LANGADM['Helper06df33001c1d7187fdd81ea1f5b277aa'] = 'Действия';
При этом \themes\MOЙШАБЛОН\modules\universalpay\translations\ru.php можно не править - все равно это никак не сказывалось на переводе в админке.

Где ошибка в модуле? Как исправить модуль, чтобы все же через админку Prestashop править перевод по нормальному?
09 Сентябрь 2013, 10:18:13
Ответ #1
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Были проблемы с переводом админки в версии 1.5.3-1.5.4
Описание и  решение - Module translation
В prestashop 1.5.5 они устранены, так заявлено. Проверяйте, может у вас остались старые функции.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
09 Сентябрь 2013, 19:10:51
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 181
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Были проблемы с переводом админки в версии 1.5.3-1.5.4
Описание и  решение - Module translation
В prestashop 1.5.5 они устранены, так заявлено. Проверяйте, может у вас остались старые функции.

По данной Вами ссылке пишется о том, чтобы убрать в строках строки PS_MODE_DEV (суть в целом). Но в 1.5.5.0 таких строк вообще нет.

И данная проблема была и есть только с Универсальным модулем оплаты. Что-то не так с модулем или в чем-то другом причина.