0 Пользователей и 1 Гость просматривают эту тему.
  • 30 Ответов
  • 1046 Просмотров
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Здравствуйте. Первый раз столкнулся с мультиязычностью и проблемкой... прошу подсказать возможные пути решения.
На сайте 2 языка RU и EN. Все элементы сайта имеют две копии для каждого языка. Которые подменяются в зависимости от выбора... Но вот модуль обратного звонка (Joomly Callback) не хочет этого делать. Большая часть надписей этого модуля продолжает оставаться на английском языке. В чем может быть дело?

https://nefrolog.siteform.ru/
*

effrit

  • Легенда
  • 9618
  • 1062 / 13
  • effrit.com
Re: Частично не переводится модуль
« Ответ #1 : 23.04.2019, 23:37:10 »
здра.
ну так открываем шаблон модуля и смотрим, как там выведено сообщение.
если текст прямо там виден, значит надо дописывать в языковые файлы строки.
если же в нужном месте идет название переменной, то ищем её в ini файле модуля в русском языке и меняем там текст на нужный.
т.е. обычно с модулем идут языковые ini файлы, в которых содержится перевод. если дистриб откроете, увидите названия
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #2 : 23.04.2019, 23:50:07 »
Да, и в русской и в английской версии весь текст введен в поля в настройках модуля... кроме placeholder в полях формы и надписи о политике...

Получается, он английский текст берет из настроек модуля а русский нет...
Нашел языковые файлы, пытаюсь разобраться...
« Последнее редактирование: 24.04.2019, 00:06:04 от fireman »
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #3 : 24.04.2019, 00:10:24 »
Ну вот к примеру, надпись на кнопке вызова модального окна выводится через переменную 'MOD_JOOMLY_CALLBACK_CALL_TO_US' данная переменная есть и в английском языковом файле и в русском для нее есть перевод, но почему-то в обоих версиях языка выводится именно англоязычное написание...
*

dmitry_stas

  • Легенда
  • 13048
  • 1224 / 8
Re: Частично не переводится модуль
« Ответ #4 : 24.04.2019, 00:39:19 »
русский языковой файл имеет кодировку utf-8 без bom? хоть что то выводится из русского языкового файла, хоть одна константа, или вообще ничего? если удалить (переименовать) английский файл - что будет выводиться?
« Последнее редактирование: 24.04.2019, 00:43:34 от dmitry_stas »
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

dmitry_stas

  • Легенда
  • 13048
  • 1224 / 8
Re: Частично не переводится модуль
« Ответ #5 : 24.04.2019, 00:47:53 »
Большая часть надписей этого модуля продолжает оставаться на английском языке.
если это имеется в виду, что часть констант из языкового файла работает, а часть нет - значит ищите в языковом файле синтаксическую ошибку. например, это может быть двоеточие внутри строки
Цитировать
var = "тут какой то текст с "двоеточием" внутри строки, а это не будет работать, на этом месте парсер споткнется и эта и последующие строки останутся непереведенными"
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #6 : 24.04.2019, 00:50:09 »
Мне кажется эти языковые файлы только на модуль в админке распространяются... расположены в папке modulename/languages. Языковый английский переименовал - без изменений.
*

dmitry_stas

  • Легенда
  • 13048
  • 1224 / 8
Re: Частично не переводится модуль
« Ответ #7 : 24.04.2019, 00:52:40 »
Языковый английский переименовал - без изменений.
значит они не учавствуют в переводе. либо забито жестко в шаблоне, либо есть еще другие языковые файлы, которые переопределяют эти. например, в корне сайта в /languages/ru-RU/ru-RU.mod_....

P.S. смущает вот эта ваша "часть надписей"... посмотрите все таки русский языковой файл на предмет ошибок, вполне вероятно что модуль его подгружает и спотыкается на нем.
« Последнее редактирование: 24.04.2019, 00:57:40 от dmitry_stas »
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #8 : 24.04.2019, 00:59:13 »
в корне сайта, в папке /languages/en-GB/ переименовал англоязычный файл для модуля - без изменений. Спасибо... смотрю!


*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #9 : 24.04.2019, 12:05:40 »
В общем сейчас ситуация такая: языковые файлы которые используются системой расположены в папке /language в корне сайта.

И например placeholder полей формы управляется из этих файлов (я изменяю значения констант в обоих языках и они изменяются на сайте).

Но вот кнопка Callback в шапке не понятно откуда подтягивает свой текст. Вот ее код в файле default.php:
Код
<button class="button-joomly-callback-form joomly-callback" type="submit"   value="save"><?php if (!empty($fields->button_form_caption)){echo $fields->button_form_caption;} else {echo  JText::_('MOD_JOOMLY_CALLBACK_CALL_TO_US');};?></button>

В файлах обоих языков есть константа MOD_JOOMLY_CALLBACK_CALL_TO_US - я изменяю ее значение, но на сайте нет реакции, как было Callback так и остается. И даже при изменении этой надписи в настройках модуля, так-же никакой реакции.
Смотрел языковые файлы, ошибок вроде нет, везде КОН_СТА_НТА="значение".

Есть мысли?
*

effrit

  • Легенда
  • 9618
  • 1062 / 13
  • effrit.com
Re: Частично не переводится модуль
« Ответ #10 : 24.04.2019, 12:10:00 »
есть мысль поискать фалы с этой переменной в папке
d:\OpenServer\domains\mramor\language\
также, возможно, в процессе борьбы вы создали её переопределение, тогда смотрим в
overrides
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #11 : 24.04.2019, 12:13:54 »
Переопределений не создавал, в папке /language/overrides такой константы нет. А откуда вы взяли такой путь? d:\...
*

effrit

  • Легенда
  • 9618
  • 1062 / 13
  • effrit.com
Re: Частично не переводится модуль
« Ответ #12 : 24.04.2019, 12:16:01 »
путь создается при создании переопределения языковых констант

а вообще, берете тотал коммандер и делаете текстовой поиск по всему сайту на имя переменной, чтобы уж наверняка
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #13 : 24.04.2019, 12:23:31 »
Искал, только другую переменную из этой формы, каких либо других файлов где она может быть - не нашел. Только папки /language в корне и модуле, ну и файлы формирующие модуль... default.php и т.д.

Ладно, сейчас еще  раз запущу поиск по этой переменной/
Вы имеете ввиду что файл создается на виртуальном сервере на компе? d:\OpenServer\...
*

effrit

  • Легенда
  • 9618
  • 1062 / 13
  • effrit.com
Re: Частично не переводится модуль
« Ответ #14 : 24.04.2019, 12:25:44 »
создается там, где сайт.
в админке можно создать переопределение языковых констант, это действие создаст файл с ними
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #15 : 24.04.2019, 12:28:37 »
Все понятно... Если я не найду откуда подтягиваются значения переменных, можно будет переопределить их?
И вообще возможно ли это - не найти?
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #17 : 24.04.2019, 12:33:59 »
Ок, по результатам чуть позже отпишусь...) Спасибо.
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #18 : 24.04.2019, 16:39:39 »
Ну в общем, данная переменная MOD_JOOMLY_CALLBACK_CALL_TO_US которая выводит текст на кнопку открытия модального окна встречается в следующих файлах:
1. /modules/mod_joomly_callback/tmpl/default.php (кусок кода в посте выше)
2. /modules/mod_joomly_callback/mod_joomly_callback.xml
Код
<field
name="button_form_caption"
type="text"
hint="MOD_JOOMLY_CALLBACK_CALL_TO_US"
default=""
label="MOD_JOOMLY_CALLBACK_BUTTON_FORM_CAPTION"
description="MOD_JOOMLY_CALLBACK_BUTTON_FORM_CAPTION_DESC" />
<field
3. /modules/mod_joomly_callback/languages/en-GB.mod_joomly_callback.ini и ru-RU.mod_joomly_callback.ini
сейчас там:
MOD_JOOMLY_CALLBACK_CALL_TO_US="CallbackMMM" и
MOD_JOOMLY_CALLBACK_CALL_TO_US="Обратный звонокMMM"
соответственно.
4. /language/en-GB/en-GB.mod_joomly_callback.ini и /language/ru-RU/ru-RU.mod_joomly_callback.ini
MOD_JOOMLY_CALLBACK_CALL_TO_US="CallbackUUU"
MOD_JOOMLY_CALLBACK_CALL_TO_US="Обратный звонокUUU"

соответственно.
Ну и еще в папке с модулем есть испанский файл es-ES.

А значение кнопки на сайте сейчас Callback на всех языках.
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #20 : 24.04.2019, 17:00:28 »
Естественно все менял, и сейчас то в значениях добавил UUU и MMM, чтобы отследить какой языковый файл сработает.
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #22 : 24.04.2019, 17:20:34 »
Ну нет... посмотрите на поля формы, я вношу изменения в значения переменных которые в /languages в корне сайта и они отражаются на сайте. Сейчас это видно, я там чего-то дописал в полях... а вот все остальное ...
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #24 : 24.04.2019, 17:36:20 »
Есть, я в них что только не писал, даже матом, удалял все, оставляя их пустыми - ничего не меняется.
*

effrit

  • Легенда
  • 9618
  • 1062 / 13
  • effrit.com
Re: Частично не переводится модуль
« Ответ #25 : 24.04.2019, 17:39:12 »
просто условие
Код
$fields->button_form_caption
типа про это как раз. если оно заполнено, то из него должно браться.

можете попробовать убрать условие, чтобы тянуло безусловно из текстового файла

Код
<button class="button-joomly-callback-form joomly-callback" type="submit"   value="save"><?php echo  JText::_('MOD_JOOMLY_CALLBACK_CALL_TO_US');?></button>
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #26 : 24.04.2019, 17:45:04 »
Да... это работает! Большое вам спасибо!
Вопрос... но почему не подтягивает с настроек модуля?

А вот так картина не проясняется:
Код
<?php if ((isset($fields->button_form) ? $fields->button_form : 1)  > 0){?>
<div>
<button class="button-joomly-callback-form joomly-callback" type="submit"   value="save"><?php echo  JText::_('MOD_JOOMLY_CALLBACK_CALL_TO_US');?></button>
</div>
<?php }?>
« Последнее редактирование: 24.04.2019, 17:52:48 от fireman »
*

fireman

  • Захожу иногда
  • 268
  • 5 / 0
  • в цель...
Re: Частично не переводится модуль
« Ответ #27 : 24.04.2019, 21:11:28 »
Может быть конфликт какой происходит из-за использования двух форм? Не предназначены они для мультиязычности?
Подскажите пожалуйста еще момент, вот есть у меня конструкция:
Код
<div class="joomly-callback-offer">Нажимая кнопку "Заказать звонок" я даю согласие бла, бла, бла</div>
если мне нужно переводить эту фразу в зависимости от выбранного языка, могу я это сделать вот так:
Код
<div class="joomly-callback-offer"><?php echo  JText::_('ПРИДУ_МЫВАЮ_ПЕРЕМЕН_НУЮ');?></div>

и в языковых файлах задаю для нее значение...
*

effrit

  • Легенда
  • 9618
  • 1062 / 13
  • effrit.com
Re: Частично не переводится модуль
« Ответ #28 : 24.04.2019, 21:28:17 »
почему условие не срабатывает мне лень разбираться. это надо смотреть, как переменная получена и т.д.

а языковые переменные - да, можете свои добавлять
*

dmitry_stas

  • Легенда
  • 13048
  • 1224 / 8
Re: Частично не переводится модуль
« Ответ #29 : 25.04.2019, 08:23:32 »
если мне нужно переводить эту фразу в зависимости от выбранного языка, могу я это сделать вот так
именно так и нужно
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль Jquery Jumpmenu JT (выпадающее меню) некорректно отображается

Автор Artur-ArtMetallUrall

Ответов: 52
Просмотров: 1678
Последний ответ 27.06.2018, 15:45:01
от lexxbry
Модуль Breadcrumbs, стоит ли заменить schema org на ссылки своего сайта?

Автор vad78

Ответов: 5
Просмотров: 709
Последний ответ 02.01.2018, 02:18:30
от vad78
Не переводится компонент

Автор Vergi

Ответов: 20
Просмотров: 1070
Последний ответ 18.12.2017, 09:44:18
от SeBun
Мультиязычность или модуль в модуле

Автор ipugach

Ответов: 4
Просмотров: 537
Последний ответ 03.01.2017, 23:06:54
от ipugach
Не переводится Read more модуля К2 в шаблоне Retroid

Автор Sergunqa

Ответов: 15
Просмотров: 1197
Последний ответ 30.12.2016, 08:23:46
от kv108