Интерпретатор языка системы

проблема с интерпретатором внутреннего языка

#1 3 февраля 2016 в 03:14

если в файле системы указано например {$LANG.HITS} система не читает это хотя в папке langua все есть пере заливал не помогает, уважаемые форумчане знатоки системы укажите где искать? система 1,10,4 приходиться в ручную прописывать >ХИТ< так работает

#2 3 февраля 2016 в 03:54
Какой файл правите?
#3 3 февраля 2016 в 04:04


Какой файл правите?

Странник

любой в котором выдает ошибку в компонентах в модулях, вопрос что в системе отвечает за интерпретацию
#4 3 февраля 2016 в 05:55
Michail, Значит данная переменная не обозначена в файле вызова, либо инклюд файла не сделан, смотреть надо логи.
#5 3 февраля 2016 в 06:20


Michail, Значит данная переменная не обозначена в файле вызова, либо инклюд файла не сделан, смотреть надо логи.

kirkr

где файл вызова и где инклюде какой именно файл отвечает за это в системе?
#6 3 февраля 2016 в 07:15
У вас не переведены все слова или только этот "hits"?

если в файле системы указано например {$LANG.HITS} система не читает это хотя в папке langua все есть пере заливал не помогает, уважаемые форумчане знатоки системы укажите где искать? система 1,10,4 приходиться в ручную прописывать >ХИТ< так работает

Michail

вопрос что в системе отвечает за интерпретациют

Michail

{$LANG.HITS} — это не совсем "файл системы" — правильнее назвать переменной шаблона
эти переменные формируются и передаются шаблону в файле, который этот самый шаблон вызывает, как правило это файл компонента frontend.php

Но фразы из файла подключается где-то ранее… не разбирался где, но знаю что используется глобальный массив $_LANG куда собираются все нужные фразы.
#7 3 февраля 2016 в 07:31

глобальный массив $_LANG куда собираются все нужные фразы.

Sonat
laugh
Спасибо за правильное высказывание моей мысли и правильное обозначение проблемы, так вот этот шаблон не читает буквально все файлы и я так понимаю что видимо один из системных файлов задает всю эту музыку, заметил это после установки платного компонента, но вроде перелазил что мог ничего не поменялось, чтобы что то исправить надо узнать от куда и куда поэтому спросил у знатоков, как говориться одна голова хорошо а с опытом зашибись laugh
#8 3 февраля 2016 в 07:33

где файл вызова и где инклюде какой именно файл отвечает за это в системе?

Michail
Посмотрел только что.
Конструктор в model.php компонента обращается к классу ядраloadLanguage передав ему имя папки с языками этого компонента
Функция loadLanguage (находится в файле cms.php) и инклюдит этот файл.

Но что-то мне подсказывает что вам не надо так глубоко лезть… smoke
#9 3 февраля 2016 в 07:48


где файл вызова и где инклюде какой именно файл отвечает за это в системе?

Michail
Посмотрел только что.
Конструктор в model.php компонента обращается к классу ядраloadLanguage передав ему имя папки с языками этого компонента
Функция loadLanguage (находится в файле cms.php) и инклюдит этот файл.

Но что-то мне подсказывает что вам не надо так глубоко лезть… smoke

Sonat
Что значит вам подсказывает??? уточнить можно?, я выявил неработающие на всем сайте ява ссылки так вот если меняю на текст вместо $LANG скрипты работают zst
#10 3 февраля 2016 в 07:56
Есть подозрение что ошибка в самом языковом файле или пути к нему (просто у меня так было вот и "что-то подсказывает")
#11 3 февраля 2016 в 08:01

просто у меня так было вот и

Sonat
я можете описать проблему и путь решения как у вас было?
#12 3 февраля 2016 в 08:06
Попробуйте вывести в браузер массив $_LANG. Для этого вставьте код
  1. echo '$_LANG = '; print_r($_LANG);
в файл frontend.php.
И скажите результат.

Если результат будет пустая строка, боюсь, сами не справитесь. Придется вам приглашать того, кто немного лучше вас разбирается в Первой ветке.
#13 3 февраля 2016 в 08:17
Путь? можно попробовать...
Первое — в фронте, перед вызовом шаблона, смотрел весь глобальный массив $_LANG

Такой вот конструкцией:
  1. echo "<pre>";
  2. print_r ($_LANG);
  3. echo "</pre>";
Дальше, увидев что моих переменных в массиве нет, я пошел в файл с языковыми строками компонента, планируя все там удалить и вставить только одну строку:
  1. <?php $_LANG['TEST'] = '----------------- УРА ---------------'; ?>
Хотел в результате опять посмотреть вывод массива, и в зависимости от того есть моя строка или нет решить где искать проблему.

Но в моем случае было все проще:
когда нашел файл с фразами оказалось, что он имел ошибку в названии, вроде shops.php вместо shop.php и ошибка была найдена сама собой.
#14 3 февраля 2016 в 08:24
в логах основная ошибка /includes/smarty/libs/Smarty.class.php on line 1095, referer:
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.