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

Разные макеты дизайна для товара

06.03.2013, 16:03
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

Есть трехколоночный макет (шаблон). Карточка товара выводится именно в нем.
Нужно, чтобы список товаров (Объект в списке) выводился в другом шаблоне, двухколоночном.
Конечно, можно назначить общим двухколоночный макет, а в Отображение объекта дописать третью колонку. Но, что-то мне кажется, это не совсем то.

Подскажите, плз)

Stark
06.03.2013, 23:18
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

чтобы вас однозначно понять нужно навести порядок в используемой терминологии. В неткете есть такие понятия как: макет дизайна, компонент и шаблон компонента. Вы вот о чем говорите в рамках этих терминов?

Temet nosce...
07.03.2013, 00:05
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

В рамках вышеуказанных терминов речь идет о первом варианте, т.е. Макет дизайна.
)))

Может, в системных настройках ему (НЕТКАТу) сказать, чтобы выводли в нужном макете дизайна.
Но с помощью message_select не увидел в запросе что-то про макет дизайна.

Stark
07.03.2013, 10:13
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

За вывод товаров должен отвечать компонент (шаблоны компонента), а не макет дизайна. Если речь идет о какой-то титульной странице, где у вас вывод товаров находится в разных частях страницы (например вверху, центре и внизу), то тогда для каждого из этих блоков вызываете отдельно ф-ию s_list_class, но опять же, то что вернет эта ф-ия - оформляется в компоненте, а никак не в макете дизайна.

Temet nosce...
07.03.2013, 13:02
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

Все правильно, я об этом знаю.
Но речь идет не об этом, а о том, чтобы при выводе конкретного товара подключался другой макет дизайна.
Можно, например, прямо в ссылку добавить "?template=ХХ".
Вот я и спрашиваю, можно ли добавить строку в Системные настройки для этого?

Stark
07.03.2013, 22:53
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Цитата:
Можно, например, прямо в ссылку добавить "?template=ХХ".

Так можно
Цитата:
Вот я и спрашиваю, можно ли добавить строку в Системные настройки для этого?

Так не получится, ибо $template в движке определяется раньше вывода компонента.

Temet nosce...
08.03.2013, 15:11
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

Цитата:

Так не получится, ибо $template в движке определяется раньше вывода компонента.

Значит, остановимся на - $fullLink?template=ХХ

Stark
11.03.2013, 00:13
den

Зарегистрирован:
2005-10-28
Сообщений: 33

Урлы портить - не самое лучшее решение, имхо…

У меня на старых версиях (3.XX) отлично работает такой код в шаблонах вывода навигации основного макета:
Код:
if ($action == 'full') // тут любые условия
{
$template=56; // номер нужного макета
$template_env = InheritTemplateEnv($template);
eval($template_env['Settings']);
$template_header = $template_env["Header"];
$template_footer = $template_env["Footer"];
}


 
11.03.2013, 15:41
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

Или
Код:
".($classID==XX&&$action=='full'?"тут вывод одной верстки":"тут вывод другой верстки")."


кстати, подсказка DiGGy

Но решилось все гораздо проще))):
Товары добавляются в раздел, в дополнительном поле карточки товара указаны номера подразделов. И вот в подразделе уже другой макет дизайна.

Stark
198 196 2013-03-11 15:41:44 12942
Описание проекта