И вновь мультиязычность

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

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
И вновь мультиязычность
« : 16.05.2016, 18:09:44 »
Приветствую, уважаемые!
Проблема такая.
Сайт на двух языках. Весь контент J отображается нормально на обоих языках и на русском (дефолт) и на английском. Все пункты меню связаны.
В JS та же ситуация с пунктами меню, НО! При переключении языка меняется все кроме содержимого магазина Переключаются все доп. модули, крошки и меню магазина.
Описание категорий и продуктов есть на обоих языках. Языки включены и опубликованы.
Если изменить дефолтный язык на сайте, то все отображается на измененном дефолтном и так же не переключается на второй язык.
Т.е. весьь контент магазина отображается ТОЛЬКО на дефолтном языке сайта в не зависимости от выбранного.
Обновления все последние и у J и у JS.

Куда копать?
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

dmitry_stas

  • Профи
  • ********
  • 9666
  • 931
Re: И вновь мультиязычность
« Ответ #1 : 16.05.2016, 21:46:49 »
мультиязычность сделана стандартными средствами Joomla? или какой то доп. компонент?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
Re: И вновь мультиязычность
« Ответ #2 : 17.05.2016, 08:33:30 »
dmitry_stas
Только стандартные средства. Все языковые константы в JS переводятся, только контент нет.
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

Taatshi

  • Support Team
  • *****
  • 4782
  • 452
Re: И вновь мультиязычность
« Ответ #3 : 17.05.2016, 09:43:53 »
Переключите на стандартный шаблон и посмотрите что из этого выйдет
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.

*

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
Re: И вновь мультиязычность
« Ответ #4 : 17.05.2016, 09:45:25 »
Taatshi
Переключал и шаблоны J и шаблоны JS. Результат один и тот же.
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

dmitry_stas

  • Профи
  • ********
  • 9666
  • 931
Re: И вновь мультиязычность
« Ответ #5 : 17.05.2016, 11:15:05 »
\components\com_jshopping\tables\product.php
Цитировать
    function getDescription() {
        $lang = JSFactory::getLang();
        $name = $lang->get('name');
        var_dump($name);
в карточке товара что покажет?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
Re: И вновь мультиязычность
« Ответ #6 : 17.05.2016, 11:27:09 »
dmitry_stas
string(10) "name_ru-RU"
в обоих случаях
Спойлер
[свернуть]
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

dmitry_stas

  • Профи
  • ********
  • 9666
  • 931
Re: И вновь мультиязычность
« Ответ #7 : 17.05.2016, 11:38:41 »
хм... а тут \components\com_jshopping\lib\factory.php public static function getLang
Цитировать
            $ml->setLang($langtag);
            var_dump($langtag);
            JDispatcher::getInstance()->trigger('onAfterGetLangJSFactory', array(&$ml, &$langtag));
            var_dump($langtag);

Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
Re: И вновь мультиязычность
« Ответ #8 : 17.05.2016, 11:42:36 »
dmitry_stas
string(5) "ru-RU" string(5) "ru-RU"
так же в обоих случаях
« Последнее редактирование: 17.05.2016, 11:46:03 от assaru »
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

dmitry_stas

  • Профи
  • ********
  • 9666
  • 931
Re: И вновь мультиязычность
« Ответ #9 : 17.05.2016, 12:21:50 »
очень интересно... а в \components\com_jshopping\tables\config.php
Цитировать
    function loadLang(){
        $this->cur_lang = JFactory::getLanguage()->getTag();
        var_dump($this->cur_lang);
    }
?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
Re: И вновь мультиязычность
« Ответ #10 : 17.05.2016, 12:24:47 »
dmitry_stas
string(5) "ru-RU" в обоих случаях
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

dmitry_stas

  • Профи
  • ********
  • 9666
  • 931
Re: И вновь мультиязычность
« Ответ #11 : 17.05.2016, 13:06:13 »
не понимаю как такое может быть. и при этом вы говорите что у вас языковые переменные подгружаются верно? т.е. тут \components\com_jshopping\lib\factory.php
Цитировать
    public static function loadLanguageFile($langtag = ""){
        $lang = JFactory::getLanguage();
        if ($langtag==""){
            $langtag = $lang->getTag();
        }
        var_dump($langtag);
покажет разные языки?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
Re: И вновь мультиязычность
« Ответ #12 : 17.05.2016, 13:09:38 »
dmitry_stas
string(5) "en-GB" и string(5) "ru-RU" соответственно.
Вот скрин русской страницы http://clip2net.com/s/3y7O7Dw
Вот английской http://clip2net.com/s/3y7OsZl
PS: Скрины из ответа#6
« Последнее редактирование: 17.05.2016, 13:36:56 от assaru »
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

dmitry_stas

  • Профи
  • ********
  • 9666
  • 931
Re: И вновь мультиязычность
« Ответ #13 : 17.05.2016, 17:56:51 »
посмотрел, такое поведение невозможно без стороннего вмешательства. либо плагины, либо было изменение ядра. у вас один и тот же код
Код
JFactory::getLanguage()->getTag()
дает разные результаты. причем 2 вызова этого кода происходят практически друг за другом, но что то меняет поведение второго. первый вызов дает правильный ответ, второй - нет. и обратите внимание, что это метод Joomla, а не JoomShopping. что то вмешивается в процесс. какие плагины дополнительно стоят?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
Re: И вновь мультиязычность
« Ответ #14 : 17.05.2016, 18:21:45 »
Плагины
Спойлер
[свернуть]
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

dmitry_stas

  • Профи
  • ********
  • 9666
  • 931
Re: И вновь мультиязычность
« Ответ #15 : 17.05.2016, 19:18:44 »
ничего похожего. ну к сожалению по имеющимся данным больше ничего не подскажу. нужно смотреть, ставить брекпоинты, делать логирование, смотреть что где происходит и в какой момент происходит подмена.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

Linfuby

  • Живу я здесь
  • ******
  • 1240
  • 174
  • Всё просто...
Re: И вновь мультиязычность
« Ответ #16 : 17.05.2016, 19:47:31 »
Ну если посмотреть как формируется страница товара, то видно, что сначала идущие атрибуты строятся корректно (на англ.), а вот описание уже идет на русском.
Смотрим какие события для плагинов существуют между этими двумя вызовами:
1. onAfterSetAttributeActive
2. onBuildSelectAttribute
Попробуйте найти упоминание этих функций в папке plugins, может чего и найдется
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054

*

assaru

  • Завсегдатай
  • *****
  • 776
  • 87
Re: И вновь мультиязычность
« Ответ #17 : 17.05.2016, 20:09:41 »
Linfuby
Скачал всю папку плагинов на компьютер, прошерстил Notepad++ "0" совпадений...
Проблему можно решить и по скрину и по эмоциям, счет на оплату через ЛС (с) Nobody

*

Linfuby

  • Живу я здесь
  • ******
  • 1240
  • 174
  • Всё просто...
Re: И вновь мультиязычность
« Ответ #18 : 18.05.2016, 18:58:01 »
Ну без "пациента" можно только посоветовать еще поискать в плагинах функцию "onAfterGetLangJSFactory"
И по всему сайту искать где используется "->setLang("
Должно встречаться только 2 раза:
1. administrator\components\com_jshopping\jshopping.php
2. components\com_jshopping\lib\factory.php
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054

*

Grikhno

  • Осваиваюсь на форуме
  • ***
  • 38
  • 0
Re: И вновь мультиязычность
« Ответ #19 : 08.07.2016, 01:39:47 »
Добрый день.
Возможно вопрос не совсем в тему, но где то рядом.
Подскажите как можно вывести значение характеристики на английском языке, учитывая что сайт сам на русском.
Хочу использовать значение для создания ссылки.

*

Linfuby

  • Живу я здесь
  • ******
  • 1240
  • 174
  • Всё просто...
Re: И вновь мультиязычность
« Ответ #20 : 09.07.2016, 00:23:41 »
Добрый день.
Возможно вопрос не совсем в тему, но где то рядом.
Подскажите как можно вывести значение характеристики на английском языке, учитывая что сайт сам на русском.
Хочу использовать значение для создания ссылки.
Не все так просто... Скажите зачем именно это нужно? Например я русскоязычный покупатель открываю эту ссылку и вижу англ. названия характеристик. Как то неправильно... Может правильнее сделать мультиязычный сайт?
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054

*

dmitry_stas

  • Профи
  • ********
  • 9666
  • 931
Re: И вновь мультиязычность
« Ответ #21 : 09.07.2016, 01:17:46 »
Хочу использовать значение для создания ссылки.
я так понимаю будет храниться ссылка там
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

Grikhno

  • Осваиваюсь на форуме
  • ***
  • 38
  • 0
Re: И вновь мультиязычность
« Ответ #22 : 09.07.2016, 13:08:19 »
Английское значение нужно только для формирования ссылок.
То есть допустим мне надо создать ссылку на страницу Нордика в категории Серии.
Соответственно мне нужна ссылка /series/nordika.
Как то принудительно можно вывести значение на английском из базы данных в шаблон?