Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
%total% для %data doSelection()%

Автор albionРаздел Макросы UMI.CMS

Ответов: 5
Просмотров: 5493
Последний ответ 24 Июля 2011, 10:29:40
от albion
autothumbs.php версии 2,8,4

Автор albionРаздел Настройка системы и модулей

Ответов: 6
Просмотров: 6441
Последний ответ 21 Июля 2011, 18:00:19
от admin
Фильтр по полю

Автор mihdanРаздел Шаблоны XSLT

Ответов: 1
Просмотров: 2365
Последний ответ 18 Октября 2013, 22:53:46
от PHOENIX-75
Не выводятся все теги в xslt

Автор goodprofyРаздел Шаблоны XSLT

Ответов: 2
Просмотров: 4228
Последний ответ 03 Июня 2014, 13:52:04
от goodprofy
Кастомный макрос

Автор thecoderРаздел Шаблоны XSLT

Ответов: 1
Просмотров: 2096
Последний ответ 22 Июля 2013, 17:50:14
от admin

0 Пользователей и 1 Гость просматривают эту тему.

*

shoto

  • ***
  • 235
  • +4/-0
    • Просмотр профиля
Добрый день.
Как указать в шаблонах что бы выбирался конкретный шаблон для отображения разделов каталога и других страниц.
Если один сайт, то в шаблоне указываем:
<xsl:apply-templates select="result"/>
и в зависимости от модуля информация выводится по какому то подготовленному шаблону.
как указать что бы выбирался другой, отличный от по умолчанию и принадлежащий другому сайту.
Указание mode="new_site" не помогает, выводится контент дублем. может я что конечно не так делаю...
« Последнее редактирование: 03 Августа 2012, 13:55:37 от shoto »

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:два и более сайтов на одной лицензии - разны&
« Ответ #1 : 03 Августа 2012, 21:53:44 »
если вопрос по типу: "Как вывести все товары определенной категории используя другой шаблон", то есть 2 варианта

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

2. Когда надо изменить вид центральной части (именно то что выводиться вызовом <xsl:apply-templates select="result"/>) мы можем зайти в файл /xsltTpls/modules/catalog/category-view.xsl (это путь для старого типа расположения шаблонов) и там внизу добавить уточняющий шаблон
<xsl:template match="/result[@method = 'category' and @pageId = 37]">
новое оформление :
<xsl:apply-templates select="document('udata://catalog/getObjectsList)/udata" />
</xsl:template>

в итоге на странице с id = 37 мы выведлем отдельный template

по поводу того как экономичней писать условия... можно написать id, можно altName, но неудобство будет в том случае если их надо будет поменять, так как такие id могул лежать в разных шаблонах, модулях и т.п. в итоге я предпочитаю пользоваться такой конструкцией предиката в атрибуте match

match="/result[@method = 'category' and @pageId = &catalog_page_id;]"

то есть, по сути я использовал языковую сущность в атрибуте match. Сама языковая сущность прописывается в файл /xsltTpls/i18n/constants.dtd в виде

<!ENTITY catalog_page_id "37">

и вдругие файлы из папки i18n если вы работаете с разными языковыми версиями сайта.

В итоге у вас все важные, кастомизирующие дизайн id или altName или еще что будут собраны в одном месте, в файле языковых констант