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

Материал из Umicms
Версия от 14:34, 5 мая 2014; Mad grant (обсуждение | вклад) (переименовал «Как сделать универсальный xsl шаблон меню в мультисайтовости» в «[[Как сделать универсальный xslt шаблон меню в мультисайтов�)
Перейти к:навигация, поиск

Актуально для версии 2.9.6

Задача

У Вас есть два сайта на одной лицензии, domain1.com и domain2.com:

2sitein1cms.png

На обоих сайтах используется один и тот же xslt шаблон.

Вы хотите внедрить модуль меню, но для вызова меню Вам нужно будет подставлять идентификатор меню, а их у Вас создано два.

Решение

Чтобы сохранить универсальность шаблона, необходимо будет динамически подставлять в вызов макроса menu draw() тот или иной идентификатор меню, в зависимости от домена.

Проще всего задачу можно решить следующим образом,

  • У созданных меню укажите в качестве идентификатора домен, к которому они относятся:
  • 2menu1cms.png

  • В xslt шаблоне текущий домен доступен в result'е:
  • Result-@domain.png

  • Поэтому подставить его с помощью xPath функции concat() не составит особого труда