Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Передать переменную из макета в компонент

22.01.2015, 08:26
Гость
Гость

В макете дизайна проводятся некие вычисления и получается значение. Как это значение использовать в одном из компонентов?
22.01.2015, 13:34
Nexwich
Панасин Александр
Nexwich

Зарегистрирован:
2011-04-05
Сообщений: 1037

Сделать переменную глобальной
В системных настройках компонента или макета
Код:
<? global $var; ?>

Либо поместить ее в глобальный массив сессии или куки

Для последующего ответа с моей стороны вам придется авторизоваться.

Модуль "Почтовые уведомления" – настройка email уведомлений на вашем сайте без программирования. Бесплатно. http://netcat.ru/products/CatStore/solution_242.html
22.01.2015, 15:46
Гость
Гость

global не работает
23.01.2015, 13:34
sparton
Шекера Евгений

Зарегистрирован:
2010-03-16
Сообщений: 141

компонент выводите через nc_objects_list ?
05.02.2015, 21:38
Руслан Густокашин
Студия Вэлпис

Зарегистрирован:
2012-02-06
Сообщений: 962

Чтобы в компоненте обратиться к переменной, заданной в макете дизайна, необходимо использовать конструкцию: $GLOBALS['MyVariable']
19.03.2015, 05:04
Гость
Гость

А что делать, если оно не работает?

echo $GLOBALS[sub]; //работает
echo $GLOBALS[myvar]; //не работает

Как еще можно передать данные из макета в компонент?

На странице 4 одинаковых компонента. Не хочется встраивать функционал просчета массива в него. 4 раза проходить по тяжелому массиву накладно.
19.03.2015, 11:48
Руслан Густокашин
Студия Вэлпис

Зарегистрирован:
2012-02-06
Сообщений: 962

Может как-то не так формируете переменную? У меня все работает.
В макете дизайна значение для вашей переменной должно быть присвоено в блоке "Шаблоны вывода навигации", причем без GLOBALS. Например:
$myVariable="12345";
Тогда в компоненте в любом месте через $GLOBALS['myVariable'] вы получите значение переменной. Должно работать.
198 196 2015-03-19 11:48:11 13973
Описание проекта