Вы не зашли.
Страницы 1
В шаблоне news.table.tpl есть такая замечательная переменная как {category.alt} - альтернативное имя категории, как сделать/добавить такую же в news.short.tpl. Мне это нужно чтобы можно было вешать разные css стили присущее только конкретной категории, пример, есть три категория красная,синия и зеленая, при клике на красную загружаются все краткие новости с красными заголовками/подложками, при клике на синию -синие и тд. с помощью {category.alt} как раз таки и буду различать где у меня красные а где синии.
Спасибо
Изменено Orb* (2012-05-06 10:08:27)
Не в сети
Orb*, в SVN версии есть решение - воспользоваться шаблонизатором TWIG, он доступен в штатном шаблонизаторе при использовании блока [TWIG]..[/TWIG]:
[TWIG]{% if isCategory('red, blue') %}ЭТО БУДЕТ ВЫВОДИТЬСЯ ТОЛЬКО В КАТЕГОРИЯХ с альт. именем "red" или "blue"{% endif %}[/TWIG]
Такой вариант подходит?
Не в сети
Orb*, в SVN версии есть решение - воспользоваться шаблонизатором TWIG, он доступен в штатном шаблонизаторе при использовании блока [TWIG]..[/TWIG]:
[TWIG]{% if isCategory('red, blue') %}ЭТО БУДЕТ ВЫВОДИТЬСЯ ТОЛЬКО В КАТЕГОРИЯХ с альт. именем "red" или "blue"{% endif %}[/TWIG]
Такой вариант подходит?
Ну всетаки это временный костыль нежели правильное решение, я просто не пойму почему нельзя добавить в парсер еще одну переменную?
Вроде бы сложностей не должно быть? Ваще решение vitaly не совсем подходит и вот почему: У меня много категорий и каждой категории соответствует свой стиль чтобы применить ваш вариант придеться делать следующие:
[TWIG]{% if isCategory('red') %}ЭТО БУДЕТ ВЫВОДИТЬСЯ ТОЛЬКО В КАТЕГОРИЯХ с альт. именем "red" {% endif %}[/TWIG]
[TWIG]{% if isCategory('blue') %}ЭТО БУДЕТ ВЫВОДИТЬСЯ ТОЛЬКО В КАТЕГОРИЯХ с альт. именем "blue" {% endif %}[/TWIG]
т.е получает некий аналог конструкции switch При создании новой категории мне снова придеться лезть в код и добавлять еще одну строчку.
<td id=[TWIG]{% if isCategory('red, blue') %}ЭТО БУДЕТ ВЫВОДИТЬСЯ ТОЛЬКО В КАТЕГОРИЯХ с альт. именем "red" или "blue"{% endif %}[/TWIG]> [link]{title}[/link]</td>
Уточню проблему хочу так в news.short.tpl:
<td id={category.alt}> [link]{title}[/link]</td>
И тогда все сложиться, не нужно будет лезть в шаблон каждый раз, при добавлении новой категории, в css добавляем новый стиль #{category.alt} {....} Строго следуем концепции MVC (мухи отдельно котлеты отдельно)
Не в сети
Orb*, расширил возможности функции isCategory(), теперь она может выдавать данные о текущей категории.
Обновление лежит в SVN.
+ К TWIG функции isCategory() добавлены модификаторы, позволяющие получать данные о текущей категории.
isCategory() - возвращает true в случае, если пользователь находится в какой-либо категории
isCategory(':id') - возвращает ID категории
isCategory(':alt') - возвращает альт. имя категории
isCategory(':name') - возвращает название категории
isCategory(':icon') - возвращает true если категории назначена иконка
isCategory(':icon.url') - URL иконки
isCategory(':icon.url.width') - ширина катринки
isCategory(':icon.url.height) - высота картинки
isCategory(':icon.preview') - возвращает true если у иконки категории есть превьюшка
isCategory(':icon.preview.url') - URL превьюшки иконки
isCategory(':icon.preview.url.width') - ширина превьюшки катринки
isCategory(':icon.preview.url.height) - высота превьюшки картинки
Оно?
Не в сети
Скачал из svn, написал вот такое в news.shot.tpl
[TWIG]{% if isCategory() %} {{ isCategory(':alt') }} {% endif %}[/TWIG]
и получил то что нужно, Спасибо vitaly
ЗЫ. Проверил только isCategory(':alt') , остальные не тестил т.к только это пока интересовало, ну думаю с другим проблем недолжно возникнуть
Изменено Orb* (2012-05-06 18:25:05)
Не в сети
Страницы 1