Определение категории в шаблоне

#1 5 марта 2012 в 22:31
Возможно ли через smarty каким то образом определить в каком разделе сайта находимся и вывести кусок шаблона если это нужный нам раздел.

Это можно сделать подключением своего шаблона к разделу, но получается много лишних файлов. Гораздо удобнее было бы сделать в одном файле через условие.

Не могу сообразить как. Может кто подскажет?
#2 5 марта 2012 в 23:54
Можно сделать так. Берете текущий ури и если он совпадает с нужным образцом, то выводите нужный кусок кода. Текущий ури, думаю, лучше брать в контроллере и передавать в шаблон. Только вот образец для сравнения нужно будет прописать в файле шаблона. А это не очень хорошо. Вдруг поменяете название категории, поменяется сеолинк и нужно будет каждый раз править файл шаблона. И потому тот вариант, который есть, с нужным шаблоном для категории, имхо, лучший.
#3 6 марта 2012 в 08:34
Не до конца продумал в предыдущем посте. Проверку всё же делать по id категории, у вас же категории уже созданы и имеют айди. Выясняете айди категории, и если он равен нужному, выводите один кусок кода, если другой, то другой. Возможно нужно будет получить айди текущей категории в контроллере и передать в шаблон.
Так не надо будет править ваш файл при каждой правке названия категории. Только при добавлении новых разделов.
#4 6 марта 2012 в 11:08
Я по айди и имел ввиду, только не понимаю как в смарти отловить без правки кода движка.
#5 6 марта 2012 в 20:44
picaboo, нужно конкретнее. В файлах шаблона возможно уже передается айди категории, в некоторых компонентах это так. Нужно только выяснить имя переменной. Укажите конкретнее какой компонент и какой файл шаблона. Я посмотрю. Если даже и нет в шаблоне айди, то получить его во frontend.php и передать в шаблон не сложно.
#6 7 марта 2012 в 00:23
по сути надо бы сделать чтобы основные компоненты поддерживали, так как это довольно гибкая система для работы с шаблонами получится. попробую сейчас потыркаться сам, если не получится буду просить помощи :)

В ДЛЕ есть похожая штука, в шаблоне специальный тег, в котором перечисляются айди категорий в которых он выводит то что заключено внутри тега.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.